IPv6를 지원하는 OpenVPN 서버를 설정하려고 합니다. 공급자는 나에게 /64 서브넷만 제공했습니다: 2a06:1700:1::640/64
.
OpenVPN 구성은 다음과 같습니다.
port 1194
proto udp
dev tun0
server-ipv6 2a06:1700:1::640:0/112
ca ca.crt
cert server.crt
key server.key
dh dh.pem
user nobody
group nogroup
topology subnet
server 10.8.0.0 255.255.255.0
cipher AES-256-CBC
auth SHA512
tls-version-min 1.2
tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384
push "route-ipv6 2000::/3"
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 80.67.169.12"
push "dhcp-option DNS 80.67.169.40"
keepalive 10 120
persist-key
persist-tun
crl-verify crl.pem
tls-server
tls-auth tls-auth.key 0
클라이언트는 내 Android 휴대폰처럼 IPv6 주소를 얻을 수 있지만 2a06:1700:1::640:1000
IPv6 외부 세계에는 액세스할 수 없습니다. 그리고 그들은 또한 접근할 수 없습니다.
나는 다음을 설정했다 ndppd
:
proxy eth0 {
router yes
timeout 500
ttl 30000
rule 2a06:1700:1::640:0/112 {
auto
}
}
외부에서 핑을 보낼 때 다음 tcpdump ip6 -i eth0
을 사용합니다.2a06:1700:1::640:1000
03:22:05.510078 IP6 laptop > 2a06:1700:1::640:1000: ICMP6, echo request, seq 1390, length 64
03:22:06.519622 IP6 laptop > 2a06:1700:1::640:1000: ICMP6, echo request, seq 1391, length 64
03:22:07.527548 IP6 laptop > 2a06:1700:1::640:1000: ICMP6, echo request, seq 1392, length 64
03:22:08.515457 IP6 laptop > 2a06:1700:1::640:1000: ICMP6, echo request, seq 1393, length 64
을 사용하면 tcpdump ip6 -i tun0
핑에 대한 정보가 표시되지 않습니다. OpenVPN 클라이언트에서 외부 IPv6 세계로의 연결이 ping ipv6.google
에는 나타나지만 tcpdump ip6 -i tun0
에는 나타나지 않는다고 가정합니다 tcpdump ip6 -i eth0
. 라우팅 문제인 것 같지만 원인이 무엇인지 알 수 없습니다.
IP -6 경로:
2a06:1700:1::640:0/112 dev tun0 proto kernel metric 256
2a06:1700:1::/64 dev eth0 proto kernel metric 256
fe80::/64 dev eth0 proto kernel metric 256
default via 2a06:1700:1:: dev eth0 metric 1024
루트-6:
Kernel IPv6 routing table
Destination Next Hop Flag Met Ref Use If
::1/128 :: U 256 0 0 lo
2a06:1700:1::640:0/112 :: U 256 1 0 tun0
2a06:1700:1::/64 :: U 256 0 1 eth0
fe80::/64 :: U 256 1 0 eth0
::/0 2a06:1700:1:: UG 1024 0 0 eth0
::/0 :: !n -1 1 1914 lo
::1/128 :: Un 0 1 4 lo
2a06:1700:1::/128 :: Un 0 1 0 lo
2a06:1700:1::640/128 :: Un 0 1 0 lo
2a06:1700:1::640:0/128 :: Un 0 1 0 lo
2a06:1700:1::640:1/128 :: Un 0 1 60 lo
fe80::/128 :: Un 0 1 0 lo
fe80::250:56ff:fe96:7322/128 :: Un 0 1 62 lo
ff00::/8 :: U 256 5 0 eth0
ff00::/8 :: U 256 1 0 tun0
::/0 :: !n -1 1 1914 lo
어떻게 서로 대화할 수 있나요 eth0
?tun0
매우 감사합니다!
IPv6 주소가 익명화되었습니다.