Routing

lede開放vpn vlan路由

  • December 4, 2017

希望有人可以幫助我,我有一個安裝了 LEDE 的 LinkSys WRT1900 ACS v2 路由器。我有 2 個 vlan(192.165.5.1/24、192.168.10.1/24),我還設置了 OpenVPN,我的目標是讓來自 1 個 vlan(.10.1)的流量通過 VPN 路由,來自另一個 vlan(.5.1)的流量不要通過VPN。

我有這麼多的工作,但為了非 vpn vlan 連接到網際網路,我不得不添加以下作為啟動腳本

ip route add default via 192.168.0.1 table 10
ip rule add from 192.168.5.2 table 10
ip rule add from 192.168.5.3 table 10
ip....

以上工作正常,一個vlan通過VPN而另一個不通過VPN,唯一的問題是,當我為每個IP地址輸入上述程式碼並重新啟動路由器以使更改生效時,我不能再在 vlan 之間 ping,我真的很想在任一 vlan 上本地連接到設備。

如果我取出上表,我無法在非 VPN VLAN 上上網,但可以在本地 ping 兩個 VLAN 上的設備。

如果有幫助,我在下面為您添加了一些進一步的資訊。

OpenVPN 配置文件

client
dev tun
proto udp
remote *****OMITTED*****
resolv-retry infinite
remote-random
nobind
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
persist-key
persist-tun
ping 15
ping-restart 0
ping-timer-rem
reneg-sec 0

explicit-exit-notify 3

remote-cert-tls server

#mute 10000
auth-user-pass secret

comp-lzo
verb 3
pull
fast-io
cipher AES-256-CBC
auth SHA512

<ca>
*****OMITTED*****
</ca>
key-direction 1
<tls-auth>
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
*****OMITTED*****
</tls-auth>

路由器 IP 路由表

root@LEDE:~# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.8.0.1        128.0.0.0       UG    0      0        0 tun0
default         192.168.0.1     0.0.0.0         UG    0      0        0 eth1.2
10.8.0.0        *               255.255.0.0     U     0      0        0 tun0
89.34.98.194    192.168.0.1     255.255.255.255 UGH   0      0        0 eth1.2
128.0.0.0       10.8.0.1        128.0.0.0       UG    0      0        0 tun0
192.168.0.0     *               255.255.255.0   U     0      0        0 eth1.2
192.168.0.1     *               255.255.255.255 UH    0      0        0 eth1.2
192.168.5.0     *               255.255.255.0   U     0      0        0 br-VLAN5
192.168.10.0    *               255.255.255.0   U     0      0        0 br-VLAN10
root@LEDE:~#

任何幫助將不勝感激,請放輕鬆,因為我對這一切都很陌生。

非常感謝

問題在於路由,而不是使用 VPN 或 VLAN(但與 VPN 的集成肯定會增加難度)。

  • 關於主要問題:區域網路之間的通信

表 10 用於來自 的 IP 192.168.5.0/24,因此當此類 IP 獲得預設路由時,該路由將用於任何目的地,包括其他 LAN 的 IP,即使這不是預期的。因此,它必須手動填充到其他 LAN 的路由,與主表相反,這些路由不會自動添加。

前:

# ip route get 192.168.10.3 from 192.168.5.2 iif br-VLAN5
192.168.10.3 from 192.168.5.2 via 192.168.0.1 dev eth1.2 table 10 
   cache  iif br-VLAN5

使固定:

# ip route add 192.168.10.0/24 dev br-VLAN10 table 10

後:

# ip route get 192.168.10.3 from 192.168.5.2 iif br-VLAN5
192.168.10.3 from 192.168.5.2 dev br-VLAN10 table 10 
   cache  iif br-VLAN5
  • 對於第一個小問題:必須為 VLAN5 中使用的每個 IP 添加一個 ip 規則

通常沒有理由對來自 VLAN5 的每個 IP 使用一個規則,這應該足夠了:

ip rule add from 192.168.5.0/24 table 10

但是因為 OP 發表了評論,告訴它在包含時不起作用192.168.5.1,我只能說可能有其他東西在干擾(未顯示其他網路配置,包括 iptables)。仍然可以簡化(命令netmask 192.168.5.2:192.168.5.255給出“僅”:)192.168.5.2/31 192.168.5.4/30 192.168.5.8/29 192.168.5.16/28 192.168.5.32/27 192.168.5.64/26 192.168.5.128/25

引用自:https://serverfault.com/questions/886351