萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 網路安全 >  >> 路由器知識 >> 路由器基礎

Linux 路由表管理完全指南:查看、靜態路由配置與封包轉發啟用

Linux 核心內建完整路由功能,透過 route 或 ip route 指令即可管理核心路由表。本文系統整理路由表欄位含義、三大路由類型、靜態路由增刪指令與 IPv4 封包轉發啟用方法。

查看核心路由表

# route -n
# 或
# ip route show

輸出欄位說明:

  • Destination/Gateway/Genmask:目的網路/下一跳/子網掩碼
  • Flags:U(啟用) G(閘道) H(主機路由) D(動態) M(修改)
  • Metric/Ref/Use/Iface:度量/引用計數/使用計數/輸出介面

三種路由類型識別

類型Flags範例用途
主機路由H10.0.0.10/32 via 192.168.1.1指向單一主機
網路路由無 H192.168.10.0/24 via 192.168.1.1指向整個子網
預設路由Gdefault via 192.168.1.1無匹配路由時的最後出口

靜態路由配置指令 (route 命令)

# 語法:route [add|del] [-net|-host] target [netmask Nm] [gw Gw] [dev If]

# 新增主機路由
route add -host 192.168.1.2 dev eth0:0
route add -host 10.20.30.148 gw 10.20.30.40

# 新增網路路由
route add -net 10.20.30.40 netmask 255.255.255.248 eth0
route add -net 10.20.30.48 netmask 255.255.255.248 gw 10.20.30.41
route add -net 192.168.1.0/24 eth1

# 新增預設路由
route add default gw 192.168.1.1

# 刪除對應路由(將 add 改為 del)
route del -host 192.168.1.2 dev eth0:0
route del default gw 192.168.1.1

啟用 IPv4 封包轉發 (Routing)

臨時生效(重開機失效):

# sysctl -w net.ipv4.ip_forward=1

永久生效:

# echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
# sysctl -p

驗證: sysctl net.ipv4.ip_forward 回傳 1 即啟用成功。

現代替代工具:ip route

建議使用 ip route 取代 route,功能更強、語法一致:

ip route add 192.168.10.0/24 via 192.168.1.1 dev eth0
ip route del default
ip route show
copyright © 萬盛學電腦網 all rights reserved