Netgear

失去與 OpenWRT 路由器的連接

  • April 9, 2012

我有一個帶有 OpenWRT 的 Netgear WNDR3700v2。問題是我創建了一個自定義啟動腳本,如此處所述(http://wiki.openwrt.org/doc/techref/initscripts),重新啟動後我無法連接到路由器。

自定義腳本包含的內容如下:

# Start fprobe to send NetFlow reports to ntop
fprobe -ibr-lan 192.168.1.22:2055 

# Start QoS scripts (the script described here: http://www.campsmur.cat/dani_home_network.html)

# Start the openVPN server, configured according to here: http://wiki.openwrt.org/inbox/vpn.howto.

我不記得這個自定義初始化腳本在 init.d 中的哪個優先級執行了,但我沒有故意設置任何高優先級。

現在啟動後與路由器的連接失去了。但是,我確實知道路由器的 MAC(在標籤中:Netgear_9b:7d:a6)和該 MAC 所屬的介面,以及該路由器介面應該具有的 IP(192.168.1.1)。因此,如果我嘗試從通過乙太網(IP 為 192.168.1.230)連接的筆記型電腦 ping 這個 IP 到路由器,會發生以下情況:

No. Time        Source              Destination           Protocol Length Info
2 24.567792   192.168.1.230         192.168.1.1           ICMP     155    Echo (ping) request  id=0x10eb, seq=1/256, ttl=64
3 24.576590   Netgear_9b:7d:a6      Broadcast             ARP      60     Who has 192.168.1.230?  Tell 192.168.1.1
4 24.576625   Sony_63:75:8e         Netgear_9b:7d:a6      ARP      42     192.168.1.230 is at f0:bf:97:63:75:8e
5 25.576600   Netgear_9b:7d:a6      Broadcast             ARP      60     Who has 192.168.1.230?  Tell 192.168.1.1
6 25.576608   192.168.1.230         192.168.1.1           ICMP     155    Echo (ping) request  id=0x10eb, seq=2/512, ttl=64
...

筆記型電腦的 ARP 表中已經有路由器的 MAC,因此發出 PING。然後路由器聽到這個 PING,但是他的 arp 表是空的,因此發送一個 ARP 請求來找出筆記型電腦的 IP 屬於哪個 MAC。然後筆記型電腦對這個 ARP 請求發送一個回复,但是路由器忽略了它並且不發送 ICMP 回复!這不僅是 ICMP 問題,如果我嘗試 ssh 或通過 Web 門戶進行連接,也會發生這種情況。因此,我感覺問題出在路由器中的 ARP 程序上。

有人知道如何連接到路由器嗎?是否可以嘗試使用 IPv6 訪問(因為沒有 arp)?但我沒有這方面的經驗。否則是否可以在沒有 IP 連接的情況下將新韌體刷新到路由器?

最好的祝福

丹尼爾

只需進行 30/30/30 重置即可將路由器恢復為預設設置。然後你可以重新配置路由器。

  1. 按住重置按鈕 30 秒。不要釋放它。
  2. 關閉路由器 30 秒。不要鬆開復位按鈕。
  3. 打開路由器。等待 30 秒。最後,鬆開重置按鈕。

大約一分鐘後,路由器應該可以在192.168.1.1所有設置為預設設置的情況下 ping 通。韌體將是您上次載入到路由器上的任何內容。

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