Networking
如何使用 VPN 介面啟用正確路由?
我安裝在 LAN 中的伺服器上,兩個組件之間
wireguard
存在單個問題。ping
拓撲如下:
srv
是一台 Linux 機器(Ubuntu 18.04),它有一個帶有 IP 的物理介面192.168.10.2
和一個帶有 IP 的虛擬介面192.168.20.1
remote
是一台通過 LAN 連接wireguard
並具有 IP的機器192.168.20.2
internal
是區域網路上的一台機器,它有 IP192.168.10.5
一般來說,真實區域網路上的機器都在
192.168.10.0/24
.VPN裡面192.168.20.0/24
.任何地方都沒有
iptables
限制。IP 轉發在 上啟用
srv
。問題:我可以****從任何地方ping所有東西,除了
192.168.10.2``192.168.20.2
(伺服器上的物理網卡IP來自遠端機器上的VPN)。具體來說
- 我可以從( )
remote
的srv
兩側和 LAN 上的其他任何東西(在上面的列表中)到達。
wireguard``192.168.20.1``192.156.10.5
- 我可以
remote
從srv
(通過 VPN)到達上的路由表
srv
(br0
是“物理”介面,實際上這是一個網橋,但在這裡無關緊要)default via 192.168.10.1 dev br0 proto dhcp metric 1024 192.168.10.0/24 dev br0 proto kernel scope link src 192.168.10.2 192.168.20.0/24 via 192.168.20.1 dev wg0 proto static 192.168.20.0/24 via 192.168.10.2 dev br0 proto dhcp metric 1024
路由表在
remote
Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 10.237.76.1 10.237.78.2 25 10.237.76.0 255.255.252.0 On-link 10.237.78.2 281 10.237.78.2 255.255.255.255 On-link 10.237.78.2 281 10.237.79.255 255.255.255.255 On-link 10.237.78.2 281 127.0.0.0 255.0.0.0 On-link 127.0.0.1 331 127.0.0.1 255.255.255.255 On-link 127.0.0.1 331 127.255.255.255 255.255.255.255 On-link 127.0.0.1 331 192.168.10.0 255.255.255.0 192.168.20.1 192.168.20.2 135 192.168.20.0 255.255.255.0 On-link 192.168.20.2 291 192.168.20.2 255.255.255.255 On-link 192.168.20.2 291 192.168.20.255 255.255.255.255 On-link 192.168.20.2 291 192.168.56.0 255.255.255.0 On-link 192.168.56.1 281 192.168.56.1 255.255.255.255 On-link 192.168.56.1 281 192.168.56.255 255.255.255.255 On-link 192.168.56.1 281 224.0.0.0 240.0.0.0 On-link 127.0.0.1 331 224.0.0.0 240.0.0.0 On-link 192.168.56.1 281 224.0.0.0 240.0.0.0 On-link 10.237.78.2 281 224.0.0.0 240.0.0.0 On-link 192.168.20.2 291 255.255.255.255 255.255.255.255 On-link 127.0.0.1 331 255.255.255.255 255.255.255.255 On-link 192.168.56.1 281 255.255.255.255 255.255.255.255 On-link 10.237.78.2 281 255.255.255.255 255.255.255.255 On-link 192.168.20.2 291
192.168.20.2
發送數據包但未192.168.20.1
到達的原因可能是什麼192.168.10.2
?
問題出在雙路
192.168.20.0/24 via 192.168.20.1 dev wg0 proto static 192.168.20.0/24 via 192.168.10.2 dev br0 proto dhcp metric 1024
第一個是作為設置的一部分添加的
wg0
。它是正確的。第二個是從 DHCP 中檢索的,它將這條路由發送給客戶端,以便他們知道如何到達
192.168.20.0/24
,即 VPN 網路。此資訊不僅對持有 VPN 的主機沒有用,而且實際上有害,因為當來自 VPN 網路的數據包被路由到 VPN 伺服器(同一主機)時[發生了一些可怕的事情,我不確定是什麼]
刪除第二條路線解決了問題,但提出了另一條路線(不相關)。