제 경우에는 서버의 IP 범위는 192.168.255.0/24이고 서브넷의 범위는 10.0.0.0/24입니다.
구성을 추가하기 전에 여기서 문제를 설명하겠습니다. 서버 네트워크에 경로를 푸시하고 있으며
push "route 192.168.255.0 255.255.255.0 192.168.255.1"
두 개의 다른 클라이언트 시스템으로 테스트했습니다.
테스트 1
첫 번째는 오류를 발생시켜
RTNETLINK answers: Network is unreachable
라우팅 테이블이 관련 항목을 얻지 못했다는 것을 IP에 알려줍니다.
root@127:/etc/openvpn/client# ip route
default via 192.168.88.1 dev eth0 proto dhcp metric 100
10.0.0.0/24 dev tun0 proto kernel scope link src 10.0.0.1
192.168.88.0/24 dev eth0 proto kernel scope link src 192.168.88.154 metric 100
213.136.74.54 via 192.168.88.1 dev eth0
수동으로 추가하려고 해도 같은 현상이 발생합니다.
ip route add 192.168.255.0/24 via 192.168.255.1 dev tun0
테스트 2 두 번째는 mac이고 오류가 발생하지 않지만 경로를 잘못된 인터페이스에 넣습니다. en0 대신 utun3이어야 한다고 생각합니다.
Internet:
Destination Gateway Flags Netif Expire
default 192.168.88.1 UGScg en0
10/24 10.0.0.2 UGSc utun3
10.0.0.2 10.0.0.2 UH utun3
192.168.255 192.168.255.1 UGSc en0
이것이 내 구성입니다.
server 192.168.255.0 255.255.255.0
verb 3
key /etc/openvpn/pki/private/VPN.greenhive.at.key
ca /etc/openvpn/pki/ca.crt
cert /etc/openvpn/pki/issued/VPN.greenhive.at.crt
dh /etc/openvpn/pki/dh.pem
tls-auth /etc/openvpn/pki/ta.key
key-direction 0
keepalive 10 60
persist-key
persist-tun
proto udp
port 1194
dev tun
status /tmp/openvpn-status.log
topology subnet
client-config-dir ccd
#user nobody
#group nogroup
comp-lzo no
client-to-client
### Route Configurations Below
route 192.168.255.0 255.255.255.0
route 10.0.0.0 255.255.255.0
route 10.0.1.0 255.255.255.0
### Push Configurations Below
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
push "comp-lzo no"
push "route 192.168.255.0 255.255.255.0 192.168.255.1"