Ne yapmaya çalışıyorum bir vpn tüneli üzerinden IPv6 trafiğini yönlendirmektir. Bu şekilde, IPv6'yı IPv6'yı desteklemeyen bir ağda kullanabilmeliyim.
IPv6 bloğu atanmış bir VPS var. Bu bloğun bir kısmı openvpn istemcileri için kullanmak istiyorum. Aklımdaki aralık 2001:db8::111:800:0/112
(önek anonimleştirildi) idi, çünkü openvpn yalnızca / 64 ve / 112'yi alt ağlar olarak destekliyor.
Tünel üzerinden IPv6 zaten çalışıyor, istemciden, ben sunucu ( 2001:db8::111:800:1
) ping ve ayrıca sunucu ( 2001:db8::111:100:100
ve 2001:db8:216:3dfa:f1d4:81c0
) arayüzleri .
Rağmen, istemciden google.com ping çalışırken, hiçbir yanıt (ping zaman aşımı) olsun. Bu sorunu ayıklamak için, sunucudaki trafiği yakalamak için tcpdump kullandım ve ping paketlerinin dışarı çıktığını görebiliyorum, ancak geri dönüş yok. İp6tables'a günlük kuralları eklemek, paketleri dışarıda gösterir, ancak hiçbir şey gelmez.
Sunucumdan zaman aşımına uğrayan çevrimiçi bir izleme aracı kullandım. Ben de ip ( 2001:db8::111:800:1001
) ulaşılabilir olması için sonuç arabirim üzerinde doğrudan ip ayarlamak için çalıştı , bu yüzden bu bir yönlendirme sorunu olduğunu düşünüyorum.
İle ipv6 için yönlendirmeyi etkinleştirdim /proc/sys/net/ipv6/conf/all/forwarding
. ip6tables tüm zincirler için izin politikası vardır.
Benim sorum, linux'un bir arabirime atanmamış bir ip için bu paketi kabul etmesi ve daha fazla yönlendirmesi için tam olarak ne gerekiyor? Sadece var olan bir rota yeterli görünmüyor.
İşte istemcim ve sunucum için kurulum. Daha fazla bilgi gerekip gerekmediğini lütfen bize bildirin.
müşteri
# ip -6 addresses
10: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qlen 100
inet6 2001:db8::111:800:1001/112 scope global
valid_lft forever preferred_lft forever
# ip -6 routes
2001:db8::111:800:0/112 dev tun0 proto kernel metric 256
2000::/3 dev tun0 metric 1024
Sunucu
# ip -6 address
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000
inet6 2001:db8:216:3dfa:f1d4:81c0/64 scope global dynamic
valid_lft 86254sec preferred_lft 14254sec
inet6 2001:db8::111:100:100/128 scope global
valid_lft forever preferred_lft forever
12: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qlen 100
inet6 2001:db8::111:800:1/112 scope global
valid_lft forever preferred_lft forever
# ip -6 route
2001:db8::111:100:100 dev eth0 proto kernel metric 256
2001:db8::111:800:0/112 dev tun0 proto kernel metric 256
2001:db8::/64 dev eth0 proto kernel metric 256 expires 86194sec
default via fe80::230:48ff:fe94:d6c5 dev eth0 proto ra metric 1024 expires 1594sec
TRACE
hedefini kullanmayı deneyin (belki burada çok fazla değil) ip neighbour
, ve ip route get
. Ayrıca, lütfen kimin ping attığını belirtin google.ca
.
POSTROUTING ... MASQUERADE
denat
masaya. Ama tamamen anladığımdan emin değilim. IPv6 trafiğini tünellemeye mi çalışıyorsunuz? Varsa, ilgili tesisleriniz var mı? Are-p ipv6
IPv4 (!) Kurallarında izin paketler?