Linux下添加靜態路由表設置網關出現SIOCADDRT: Network is unreachable的問題分析


場景:

# route add default gw 192.168.4.1
route: SIOCADDRT: Network is unreachable

解釋:

1、先ping一下網關,但是ping的通不代表一定能做路由的下一跳。

2、這里所提示的unreachable應該指的是廣播不可達,而不是路由不可達。因為路由下一跳就是給ip數據包提示下一步如何走的,如果你告訴它一個無法直接廣播到達的地址的話他就要通過相應的路由去找這個地址,這就等於你要千辛萬苦找到“下一跳”(加引號是因為其實它並不是真正的下一跳,因為你是通過對應的路由[這個對應的下一跳反而成了真正的下一跳]才能找到它),然后再問他它去往原目的下一跳如何走... 這顯然不合理也難做到,因為有兩個目的地址要定位, 一個是找“下一跳”, 一個找數據包的目的地址,但正常情況下IP報文中只有一個目的地址。

 

參考:

http://blog.csdn.net/lidonghat/article/details/53520098(以上內容轉自此篇文章)

http://blog.csdn.net/panlei361/article/details/48373359

http://blog.csdn.net/u013304231/article/details/53319375

http://blog.csdn.net/trochiluses/article/details/9788247

http://www.360doc.com/content/12/0430/16/9318309_207703488.shtml

http://www.codes51.com/itwd/4369946.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM