Openvpn

OpenVPN 需要一個 –route 選項的網關參數

  • April 28, 2019

我有一個未連接到 vpn 伺服器的 OpenVPN 客戶端。我在下面粘貼了完整的日誌,但特別是,我在路線上遇到了這些問題:

OpenVPN ROUTE:OpenVPN 需要為 –route 選項提供網關參數,並且 –route-gateway 或 –ifconfig 選項沒有指定預設值

OpenVPN ROUTE:無法解析/解析主機/網路的路由:10.8.0.1

有許多具有相同客戶端配置的客戶端可以正常連接。該客戶端(和其他一些客戶端)已連接,由於系統時間變得太不同步(我相信)而失去連接,此後已同步系統時間,但現在仍無法連接。通常,重新啟動系統可以解決問題。所以這似乎不是 VPN 配置的問題,而是客戶端系統的問題。

我真的不太了解路線問題或修復它們。我確實需要處理從時間同步問題中恢復的問題,但是現在,為什麼我不能從這個客戶端手動啟動 VPN 連接?什麼會導致 OpenVPN 現在需要網關參數?

日誌

$ openvpn gatewaymaster.conf
Fri Sep 30 12:03:07 2016 OpenVPN 2.2.1 arm-linux-gnueabihf [SSL] [LZO2] [EPOLL] [PKCS11] [eurephia] [MH] [PF_INET6] [IPv6 payload 20110424-2 (2.2RC2)] built on Dec  1 2014
Fri Sep 30 12:03:07 2016 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Fri Sep 30 12:03:07 2016 LZO compression initialized
Fri Sep 30 12:03:07 2016 Control Channel MTU parms [ L:1542 D:138 EF:38 EB:0 ET:0 EL:0 ]
Fri Sep 30 12:03:07 2016 Socket Buffers: R=[163840->131072] S=[163840->131072]
Fri Sep 30 12:03:07 2016 Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:0 EL:0 AF:3/1 ]
Fri Sep 30 12:03:07 2016 Local Options hash (VER=V4): '41690919'
Fri Sep 30 12:03:07 2016 Expected Remote Options hash (VER=V4): '530fdded'
Fri Sep 30 12:03:07 2016 NOTE: UID/GID downgrade will be delayed because of --client, --pull, or --up-delay
Fri Sep 30 12:03:07 2016 UDPv4 link local: [undef]
Fri Sep 30 12:03:07 2016 UDPv4 link remote: [AF_INET]NNN.NNN.NNN.NNN:NNNN
Fri Sep 30 12:03:07 2016 TLS: Initial packet from [AF_INET]NNN.NNN.NNN.NNN:NNNN, sid=679c9108 60cb4eaf
Fri Sep 30 12:03:07 2016 VERIFY OK: depth=1, <redacted>
Fri Sep 30 12:03:07 2016 VERIFY OK: nsCertType=SERVER
Fri Sep 30 12:03:07 2016 VERIFY OK: depth=0, <redacted>
Fri Sep 30 12:03:08 2016 Data Channel Encrypt: Cipher 'BF-CBC' initialized with 128 bit key
Fri Sep 30 12:03:08 2016 Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Fri Sep 30 12:03:08 2016 Data Channel Decrypt: Cipher 'BF-CBC' initialized with 128 bit key
Fri Sep 30 12:03:08 2016 Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Fri Sep 30 12:03:08 2016 Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 2048 bit RSA
Fri Sep 30 12:03:08 2016 [server] Peer Connection Initiated with [AF_INET]NNN.NNN.NNN.NNN:NNNN
Fri Sep 30 12:03:10 2016 SENT CONTROL [server]: 'PUSH_REQUEST' (status=1)
Fri Sep 30 12:03:10 2016 PUSH: Received control message: 'PUSH_REPLY,dhcp-option DNS 208.67.222.222,dhcp-option DNS 208.67.220.220,route 10.8.0.1,topology net30,ping 10,ping-restart 120'
Fri Sep 30 12:03:10 2016 OPTIONS IMPORT: timers and/or timeouts modified
Fri Sep 30 12:03:10 2016 OPTIONS IMPORT: --ifconfig/up options modified
Fri Sep 30 12:03:10 2016 OPTIONS IMPORT: route options modified
Fri Sep 30 12:03:10 2016 OPTIONS IMPORT: --ip-win32 and/or --dhcp-option options modified
Fri Sep 30 12:03:10 2016 ROUTE default_gateway=10.1.10.1
Fri Sep 30 12:03:10 2016 OpenVPN ROUTE: OpenVPN needs a gateway parameter for a --route option and no default was specified by either --route-gateway or --ifconfig options
Fri Sep 30 12:03:10 2016 OpenVPN ROUTE: failed to parse/resolve route for host/network: 10.8.0.1
Fri Sep 30 12:03:10 2016 TUN/TAP device tun1 opened
Fri Sep 30 12:03:10 2016 TUN/TAP TX queue length set to 100
Fri Sep 30 12:03:10 2016 GID set to nogroup
Fri Sep 30 12:03:10 2016 UID set to nobody
Fri Sep 30 12:03:10 2016 Initialization Sequence Completed

伺服器

port NNNN
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "dhcp-option DNS NNN.NN.NNN.NNN"
push "dhcp-option DNS NNN.NN.NNN.NNN"
keepalive 10 120
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
hand-window 120

客戶

client
dev tun
proto udp
remote XXXXX.XXXXX.xxx NNNN
resolve-retry infinite
nobind
user nobody
group nogroup
persist-key
persist-tun
cert client.crt
key client.key
ns-cert-type server
comp-lzo
verb 3

它不應該是必需的,但我建議topology subnet在伺服器上添加。

對於較新的客戶端,子網拓撲通常是更好的選擇。當您使用拓撲子網時,它會自動執行push "route-gateway 10.8.0.1"向客戶端發送正確網關的操作。

目前有 62 個連接的客戶端。僅這一點聽起來很有希望。您能否指出增加最大主機數的選項?

啊,有你的解釋。您server 10.8.0.0 255.255.255.0使用預設拓撲的選項會從每個系統net30的池中分配 /30 網路。10.8.0.0/24所以10.8.0.0/30去伺服器,10.8.0.4/30去第一個客戶端,10.8.0.8/30去第二個客戶端,依此類推,直到 10.8.0.252/30最後一個客戶端。

您有兩個選項可以解決此問題,您可以在伺服器語句中更改子網大小,並使子網更大。這可能意味著您需要更新網路中其他設備上的任何路由表,並更改防火牆規則。

或者可能更簡單的解決方案是切換到拓撲子網。這使您不使用這種偽點對點拓撲,並使其基本上像乙太網交換機一樣工作。子網拓撲中的每個主機使用一個,並且僅使用一個 ~253 個連接的客戶端,而不是 (256/4-1) 個連接的客戶端。堅持使用舊拓撲的唯一原因是如果您有真正的舊客戶端連接。

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