Firewall
在一台設備上配置兩個路由器
我正在建構一個帶有 RPi(Raspbian)的路由器。它有3個網路介面:
- eth0:連接到網際網路(來自 DHCP 的 IP/網關)
- wlan0 , wlan1:本地 WLAN 介面(每個介面都作為 AP 提供自己的 SSID)
此外,還有一個 VPN 連接tun0到遠端網路,該網路連接到網際網路本身。
現在我想要:
- 來自wlan0的所有流量都將通過tun0和
- 來自wlan1的所有流量都將通過eth0路由
結果,我想要兩個 WLAN,一個可以直接訪問 Internet,另一個可以通過 VPN 連接訪問 Internet。
使用兩種不同的設備非常容易,但是如何僅使用一個預設網關來做到這一點?
您需要創建第二個路由表並使用基於策略的路由。應用於您的案例,您需要:
- 使用主路由表設置第一個預設路由。此表將用於本地生成的流量和來自wlan1的流量:
ip route add default via <gateway_reachable_by_eth0> table main
- 創建第二個路由表vpn:
echo 200 vpn >> /etc/iproute2/rt_tables
- 將預設路由添加到新表:
ip route add default via <gateway_reachable_by_tun0> table vpn
- 指示來自wlan0的所有流量都應使用此新表:
ip rule add from <wlan0_subnet> lookup vpn