Vpn

VPN/路由器的 DHCP

  • September 9, 2019

我正在執行一個自定義路由器(Ubuntu 18.04),它使用“橋接模式”LTE/4G 調製解調器(通過乙太網連接)。我的 ISP 使用 DHCP 並分發 10.x 地址,這些地址被分配給路由器的外部 NIC。

我還在路由器上設置了StrongSwan,當我啟動VPN時一切正常,配置如下:

conn ikev2-rw
   right=my-vpn-server
   rightid=@my-vpn-server
   rightsubnet=0.0.0.0/0
   rightauth=pubkey
   leftsourceip=%config
   leftid=centaurus
   leftauth=psk
   auto=start

剛開始時它工作正常,但是一段時間後連接斷開,我認為這是因為路由器無法刷新 DHCP 租約。在最初的 DHCP 租約幾個小時後,我在日誌中看到了很多這樣的內容:

Sep 07 20:54:05 centaurus dhclient[1378]: DHCPREQUEST of 10.3.22.61 on enp4s0 to 10.3.22.1 port 67 (xid=0x18dcd11)
Sep 07 20:54:15 centaurus dhclient[1378]: DHCPREQUEST of 10.3.22.61 on enp4s0 to 10.3.22.1 port 67 (xid=0x18dcd11)
Sep 07 20:54:26 centaurus dhclient[1378]: DHCPREQUEST of 10.3.22.61 on enp4s0 to 10.3.22.1 port 67 (xid=0x18dcd11)

我認為正在發生的事情是 VPN 正在干擾 DCHP,因此我的 ISP 沒有續訂租約。如果我關閉 VPN 然後 ifdown/ifup 外部介面,一切都會重新上線。

有什麼標準的方法來處理這個嗎?

rightsubnet=0.0.0.0/0您一起將所有流量隧道傳輸到 VPN 伺服器。這包括 DHCP 消息(從埠 68 到 67 的 UDP)。

要排除該流量繞過/直通,可以配置 IPsec 策略。排除整個本地網路或僅排除 DHCP 流量:

conn bypass-lan
   left=127.0.0.1
   leftsubnet=10.0.0.0/8
   rightsubnet=10.0.0.0/8
   type=passthrough
   auto=route

這不包括 VPN 的整個 10.x 範圍。要僅排除 DHCP 流量,請添加[udp/68]leftsubnet和。[udp/67]``rightsubnet

也可以通過bypass-lan外掛自動為本地連接的網路安裝旁路策略。

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