Router

在 OpenWRT 上為 PPPoE 和 LAN 設置路由

  • July 31, 2014

我有一個執行 OpenWRT 的華為無線路由器。

路由器通過PPPoE上網。同時它在 LAN(區域網路)中具有如下配置的乙太網地址:

Address: 10.100.219.174 NetMask: 255.255.255.0 Gateway: 10.100.219.254

我想同時訪問網際網路和區域網路,所以我連接了 PPPoE,然後使用route命令設置路由。之後的路由表是: Destination Gateway Genmask Flags MSS Window irtt Iface default 58.247.228.1 0.0.0.0 UG 0 0 0 pppoe-wan 10.0.0.0 10.100.219.254 255.0.0.0 UG 0 0 0 eth2.1 10.100.219.0 * 255.255.255.0 U 0 0 0 eth2.1 58.247.228.1 * 255.255.255.255 UH 0 0 0 pppoe-wan 192.168.0.0 * 255.255.255.0 U 0 0 0 br-lan

此時我可以在路由器上訪問 Internet 和 LAN (我可以 ping google 和任何 LAN 地址)。

但在我的筆記型電腦(連接到路由器)上,我只能訪問網際網路。如果我嘗試訪問一些肯定已啟動的 LAN 地址 (10.20.2.12),它會告訴我:

PING 10.20.2.12 (10.20.2.12): 56 data bytes Request timeout for icmp_seq 0 92 bytes from openwrt.lan (192.168.0.1): Destination Port Unreachable Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 5400 bded 0 0000 3f 01 f04f 192.168.0.164 10.20.2.12

我錯過了一些步驟嗎?

首先,您嘗試路由的網路存在兩次:10.0.0.0/8 包含 10.100.0.0/24 的網路。在這種情況下,您嘗試訪問的主機(在 Eth2.1 上)很可能不知道將其答案發送到哪裡;openwrt 使用預設網關(當您使用 WAN 連接時,這意味著 NAT)用於返回的數據包 - 如果是的話。

只需檢查您嘗試訪問的主機上是否設置了正確的網關。第二次檢查第二個網路上是否有數據包(使用wireshark或類似方法);如果有,請查找目標地址。“路由”設備上可能有錯誤的 (/8) Subent 遮罩。

如果不是,請使用您的 LAN 範圍內未包含的另一個 IP 範圍。

引用自:https://serverfault.com/questions/616203