Iptables
基於源的 IP 路由中斷通過 LAN 的訪問
我的家庭區域網路上有一個 Linux Mint 18.1 桌面。我在這台電腦上執行 PIA VPN,並在埠 22 上執行 ssh 伺服器。我可以使用內部 IP 地址從 LAN 上的其他電腦 ssh 進入這台電腦。
我還想從網際網路上 ssh 到這台電腦,所以我成功地在我的路由器上設置了埠轉發。但是,當 PIA VPN 連接時,我最初無法從網際網路上 ssh。我通過創建基於源的 IP 路由規則來解決此問題,如本文的最佳答案所述:在與傳入相同的介面上回复?.
以下是我所做的更改:
echo 200 isp2 >> /etc/iproute2/rt_tables ip rule add from 192.168.1.100 table isp2 ip route add default via 192.168.1.1 dev enp0s25 table isp2
192.168.1.100 是電腦的內部 IP 地址
enp0s25 是我的網路適配器。
通過這些更改,我現在可以從網際網路 ssh 到電腦,但是從 LAN 上的電腦 ssh 不再起作用(使用內部 IP 地址或 WAN 地址)。當我刪除這些更改時,來自 LAN 電腦的 ssh 會恢復,但我無法從 Internet 訪問。
所以我很清楚,我需要製定額外的 IP 路由規則,以便同時從 LAN 和 Internet/WAN 進行訪問。有人可以指出我正確的方向嗎?
謝謝!
基本上,您目前的設置使來自 192.168.1.100 的所有流量都使用第二個表
isp2
該表只有一個預設網關設置。
您應該再添加一條路線
ip route add 192.168.1.0/24 dev enp0s25 src 192.168.1.100 table isp2