PfSense OpenVPN:为什么使用客户端 IP 作为网关?

PfSense OpenVPN:为什么使用客户端 IP 作为网关?

我想知道为什么客户端 IP ( 172.21.0.2) 被用作 OpenVPN 子网 ( 172.21.0.0/20) 的网关?此 IP 归属于第一个连接的客户端。

请注意,我没有遇到任何与客户端及其连接有关的问题。

请参阅以下一些信息以便了解具体情况:

  • server.conf
dev ovpns1
verb 1
dev-type tun
dev-node /dev/tun1
writepid /var/run/openvpn_server1.pid
#user nobody
#group nobody
script-security 3
daemon
keepalive 10 60
ping-timer-rem
persist-tun
persist-key
proto udp4
cipher AES-128-CBC
auth SHA256
up /usr/local/sbin/ovpn-linkup
down /usr/local/sbin/ovpn-linkdown
multihome
tls-server
server 172.21.0.0 255.255.0.0
client-config-dir /var/etc/openvpn-csc/server1
lport 1194
management /var/etc/openvpn/server1.sock unix
client-to-client
duplicate-cn
ca /var/etc/openvpn/server1.ca 
cert /var/etc/openvpn/server1.cert 
key /var/etc/openvpn/server1.key 
dh /etc/dh-parameters.2048
tls-auth /var/etc/openvpn/server1.tls-auth 0
ncp-ciphers AES-128-GCM
topology subnet
  • $ ifconfig -a
ovpns1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500
    options=80000<LINKSTATE>
    inet6 fe80::d81e:c576:5231:832e%ovpns1 prefixlen 64 scopeid 0x6
    inet 172.21.0.1 --> 172.21.0.2 netmask 0xffff0000
    nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
    groups: tun openvpn
  • $ netstat -rn
Destination        Gateway            Flags     Netif Expire
172.21.0.0/16      172.21.0.2         UGS      ovpns1
172.21.0.1         link#6             UHS         lo0
172.21.0.2         link#6             UH       ovpns1

答案1

当客户端连接时,Openvpn/30会从其池中分配一个网络。第一个地址将分配给客户端,第二个地址分配给服务器,它们之间的所有通信都将通过此链接进行(我猜是为了简化内部路由)。

在您的情况下172.21.0.1/30将在客户端上,并172.21.0.2/30在服务器上,这就是您看到172.21.0.2的网关地址(以便客户端可以了解如何到达172.21.0.0/16您分配给服务器的网络)。

可以使用子网以外的其他拓扑,但我从未见过或需要它,请随时在此处阅读有关它的更多信息:OpenVPN拓扑

相关内容