서버에 핑을 보낼 수 있지만 google.com이나 8.8.8.8에는 핑할 수 없으며, 추적 경로도 실패합니다.
섬기는 사람:
$iptables -t nat -A POSTROUTING -s 10.9.8.0/24 -o eth0 -j MASQUERADE
$openvpn --dev tun1 --server 10.9.8.0 255.255.255.0 --dh /etc/openvpn/easy-rsa/keys/dh2048.pem --ca /etc/openvpn/easy-rsa/keys/ca.crt --cert /etc/openvpn/easy-rsa/keys/Hal.crt --key /etc/openvpn/easy-rsa/keys/Hal.key --reneg-sec 60 --verb 5 --duplicate-cn --mode server --client-to-client --push "redirect-gateway def1"
고객:
$openvpn --remote 10.0.0.102 --dev tun1 --client --ca /etc/openvpn/easy-rsa/keys/ca.crt --cert /etc/openvpn/easy-rsa/keys/client1.crt --key /etc/openvpn/easy-rsa/keys/client1.key --reneg-sec 60 --verb 5
위 명령이 실행된 후 클라이언트의 경로 테이블:
$route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 10.9.8.5 128.0.0.0 UG 0 0 0 tun1
default 10.0.0.1 0.0.0.0 UG 0 0 0 eth0
10.0.0.0 * 255.0.0.0 U 0 0 0 eth0
routbuntu-2.loc 10.0.0.1 255.255.255.255 UGH 0 0 0 eth0
10.9.8.0 10.9.8.5 255.255.255.0 UG 0 0 0 tun1
10.9.8.5 * 255.255.255.255 UH 0 0 0 tun1
128.0.0.0 10.9.8.5 128.0.0.0 UG 0 0 0 tun1
답변1
----일반적으로:
openvpn의 샘플 .conf-file을 사용해야 합니다. 중요한 옵션을 설명하고 있기 때문에 개선할 수 있습니다.
VPN을 시작한 후 이 명령을 사용하여 ifconfig
가상 터널 장치(예: tun0)가 서버와 클라이언트에 구성(업/온라인)되었는지 확인하세요.
@verbosity, 출력을 너무 많이 읽어서 읽을 수 있고 출력 게시에 문제가 있는 경우 verb 3
기본값 을 사용해 보아야 할 수도 있습니다 . verb 5
openvpn은 분석할 수 있도록 자세한 출력을 제공합니다.
----문제 해결:
lan-ipaddress 또는 vpn-virtual-ip-address 10.9.8.1을 사용하여 "서버"에 ping을 보낼 수 있습니다. 나는 당신의 VPN 연결이 이러한 설정으로 설정되지 않을 것이라고 가정하기 때문에 LAN/WAN-ipaddress를 핑한 것 같습니다. LAN/WAN-ip를 핑해도 VPN이 작동하는지 여부에 대해 아무 것도 알려주지 않습니다.
귀하의 질문은 매우 모호하고 많은 정보가 누락되었습니다. 하지만 나는 VPN 서버를 통해 VPN 클라이언트 컴퓨터의 모든 인터넷 트래픽을 라우팅한다고 가정합니다.
이 경우:
--openvpn-server를 소프트웨어 라우터로 설정하려면 이 iptables 규칙만으로는 충분하지 않다고 생각합니다.
일반적으로 라우팅을 위한 iptables 구성은 다음과 같습니다.
iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables -A FORWARD -i tun0 -s 10.9.8.0/24 -o eth0 -j ACCEPT
openvpn-manpages에는 "--push "redirect-gateway def1" 옵션과 사용한 ip-tables nat 행만 언급되어 있습니다. 하지만 이 iptables 규칙이 도움이 되는지 시도해 보아야 합니다. .
--그리고 내 생각엔 openvpn-server의 컴퓨터에서 IP 전달이 활성화되어야 한다고 생각합니다.
sysctl net.ipv4.ip_forward=1 sysctl net.ipv6.conf.default.forwarding=1 sysctl net.ipv6.conf.all.forwarding=1
@ openvpn 서버 구성:
--dev tun
과 중에서 선택할 수 있으며 dev tap
tun0 또는 tun1 옵션은 없습니다.
-- mode server
올바르지 않으며 이미 다음으로 모드를 설정했습니다.server 10.9.8.0 255.255.255.0
@ openvpn 클라이언트 구성:
--dev tun
여기도 이용하세요
-- remote YourServersIpAddress
이것이 실제로 LAN이나 인터넷에 있는 openvpn 서버의 ipaddress인지 확인하세요. 10.0.0.102는 나에게 특이한 것 같습니다.