Linux
無法設置從 sublan 到 WAN 的預設路由
我正在嘗試使用筆記型電腦通過 WiFi 網路將我的一台 PC 連接到 Internet。這是我的網路:
(Wifi) <=============> (Notebook) <===============> (Desktop) (192.168.1.x) (10.12.0.x) (192.168.1.85 (10.12.0.2) & 10.12.0.1)
所以,我在上網本上啟用了 ipv4_forward,並且這條 NAT 規則:
iptables -t nat -A POSTROUTING -s 10.12.0.0/24 -j MASQUERADE
這是我筆記本上的路由表:
Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 wlan0 10.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 eth0 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 192.168.1.0 0.0.0.0 255.255.255.0 U 9 0 0 wlan0 192.168.1.85 127.0.0.1 255.255.255.255 UGH 303 0 0 lo
這是我桌面上的路由表:
Destination Gateway Genmask Flags Metric Ref Use Iface 10.12.0.0 0.0.0.0 255.255.255.0 U 0 0 0 enp2s0 192.168.1.0 10.12.0.1 255.255.255.0 UG 0 0 0 enp2s0
我可以 ping 192.168.1.x 網路上的所有內容(包括我的 Internet 網關 192.168.1.254),但我無法添加簡單路由
route add default gw 192.168.1.254 enp2s0
或者
ip route add default via 192.168.1.254 dev enp2s0
我不斷收到以下錯誤:
SIOCADDRT: Network is unreachable RTNETLINK answers: Network is unreachable
而且,當然,我無法從我的桌面 ping 任何 WAN 伺服器。你知道我做錯了什麼嗎?
謝謝你。
我認為你真正想要的是:
ip route add default via 10.12.0.1 dev enp2s0