Linux下如何實現區域網內網路裝置相互通訊

大雄45發表於2020-05-02

在區域網中,存在著 上還執行著數臺分機(與宿主linux不同網段),且這些主機的網段在整個區域網中,都沒有路由,在區域網中的任何主機都不可與之通訊,如上圖所示。只能透過先跳到宿主機然後在由宿主機連線方可。

在區域網中,存在著linux上還執行著數臺分機(與宿主linux不同網段),且這些主機的網段在整個區域網中,都沒有路由,在區域網中的任何主機都不可與之通訊,如上圖所示。只能透過先跳到宿主機然後在由宿主機連線方可。
Linux下如何實現區域網內網路裝置相互通訊Linux下如何實現區域網內網路裝置相互通訊
問題解決:
Linux下如何實現區域網內網路裝置相互通訊Linux下如何實現區域網內網路裝置相互通訊
可以看出,宿主的主機ip為10.8.1.84在測試中是可以進行通訊的,但是下面的172.17.0.1網段在區域網中任何節點都不可達。只能透過先連線10.8.1.84來連線到172.17.0.1網段的主機

解決:

把要訪問的網段新增進windows的路由表中,下一跳指向宿主機的ip。因為只有宿主機可以與這個網段的主機通訊

route -p add 172.17.0.0 mask 255.255.0.0 10.8.1.84

驗證:
Linux下如何實現區域網內網路裝置相互通訊Linux下如何實現區域網內網路裝置相互通訊
問題:在區域網中有些tp-link小路由器下回連線一些裝置,但是會有一種奇怪的現象。tp-link下掛的裝置可以與區域網內的任何裝置通訊(ping可達),但是區域網中的裝置不能與下掛的裝置通訊(ping不可達)

分析:tp-link無線小路由器相當於一臺帶有nat功能的裝置,因為路由器的wan口的ip為區域網裡的可達ip,但是路由器下的lan口包括無線裝置從tp-link獲取到的ip一般為另外一個網段的ip,這個ip段在真實的區域網中是沒有任何路由的,因此wifi下的裝置可以ping通區域網中的任何裝置,但是區域網中的任何裝置不可ping通wifi下的裝置

因為在tp-link小路由器認為,lan口下的裝置需要上網,而tp-link就會把這些lan口下的裝置nat轉換為區域網已有的ip即wan的ip。而當區域網內的裝置需要訪問wifi下的裝置時,由於tp-link做了nat,因此區域網內的裝置是訪問不到wifi下的裝置的。只能在tp-link做虛擬伺服器(埠對映),把tp-link下掛的裝置的埠對映出來,用wan口的ip(區域網可識別ip)對映出來,即可做到區域網內的其他裝置訪問wifi下掛的裝置

原文來自:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2689689/,如需轉載,請註明出處,否則將追究法律責任。

相關文章