Bu benim ifconfig kurulumum:
eth1 Link encap:Ethernet HWaddr 54:04:a6:49:99:16
inet addr:192.168.0.12 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::5604:a6ff:fe49:9916/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:33325389 errors:0 dropped:0 overruns:0 frame:0
TX packets:19876569 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:38511610122 (38.5 GB) TX bytes:5030880286 (5.0 GB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:1532251 errors:0 dropped:0 overruns:0 frame:0
TX packets:1532251 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:128544929 (128.5 MB) TX bytes:128544929 (128.5 MB)
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.8.0.6 P-t-P:10.8.0.5 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:113 errors:0 dropped:0 overruns:0 frame:0
TX packets:1663663 errors:0 dropped:489668 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:14523 (14.5 KB) TX bytes:1140762511 (1.1 GB)
tun1 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.9.0.6 P-t-P:10.9.0.5 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:4 errors:0 dropped:0 overruns:0 frame:0
TX packets:1623870 errors:0 dropped:570939 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:828 (828.0 B) TX bytes:1130753499 (1.1 GB)
wlan0 Link encap:Ethernet HWaddr 00:21:00:e6:c8:aa
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Bu yüzden bu ip yönlendirme kurulumu var:
default via 192.168.0.1 dev eth1 proto static
10.8.0.0/24 via 10.8.0.5 dev tun0
10.8.0.5 dev tun0 proto kernel scope link src 10.8.0.6
10.9.0.0/24 via 10.9.0.5 dev tun1
10.9.0.5 dev tun1 proto kernel scope link src 10.9.0.6
192.168.0.0/24 dev eth1 proto kernel scope link src 192.168.0.12 metric 1
192.168.1.0/24 via 10.8.0.5 dev tun0
Amaçlandığı gibi çalışır. Her iki tünelden (openvpn) makineleri pingleyebiliyorum.
Ancak eklediğimde
sudo ip route add 0.0.0.0/1 via 10.9.0.5 dev tun1
sudo ip route add 128.0.0.0/1 via 10.9.0.5 dev tun1
her şey kırılıyor. Artık makinelere iki tünelden de ping atamıyorum.
Gerçekten neden olsa anlamadım. Çünkü "yüksek önek" rotası olarak tanımladım
10.8.0.0/24 via 10.8.0.5 dev tun0
neden yeni "alt ön ek" rotası 10.8.0.1'e ping atmamı engelliyor?
Bağlam için, bu istemcinin bağlandığı ve 10.8.0.6 ipini aldığı bir openvpn sunucusu kullanıyorum. Bundan sonra aynı "orijinal" sunucuya (10.8.0.1) bağlı olan başka bir openvpn sunucusuna (10.8.0.10) bağlanır. İlk sunucu aslında beni sadece ikinci sunucuyla aynı alt ağa yerleştirir (ikinci sunucunun statik bir ipi yoktur ve bağlantı noktası iletilemez). Eklemekte olduğum 2 düşük önek yolu, ikinci bir sunucu üzerinden tüm trafiği iletmeye çalışırken "yönlendirme ağ geçidi" seçeneğinin bir parçası.
DÜZENLE:
Tüm yapılandırma dosyalarını ekliyorum. (Alakasız veya varsayılan ayarları atlayacağım)
- main> İnternet trafiği yönlendirmesini sağlamaya çalışan ana müşteri
- alpha> herkesi aynı alt ağa yerleştiren sunucu
- beta> ana, trafiğini yönlendirmek istediği sunucu / istemci. (not, beta statik bir IP’ye sahip değildir ve bağlantı noktası değiştirilemez)
alpha server.conf
port 443
proto udp
dev tun
server 10.8.0.0 255.255.255.0
client-to-client
# broadcast beta's subnet
route 192.168.1.0 255.255.255.0
push "route 192.168.1.0 255.255.255.0"
beta client.conf (alfa sunucusuna bağlanmak için kullanılır)
client
dev tun
proto udp
remote [alpha IP] 443
beta server.conf (trafik bu sunucu üzerinden yönlendirilmelidir)
port 444
proto udp
dev tun
server 10.9.0.0 255.255.255.0
client-to-client
push "redirect-gateway local def1"
push "dhcp-option DNS 8.8.8.8"
ana alfa istemcisi.conf
client
dev tun
proto udp
remote [alpha IP] 443
ana beta istemcisi.conf
client
dev tun
proto udp
remote 10.8.0.10 444
EDIT 2:
Ben ara bir openvpn sunucusu kullanmak yerine, alfa sunucusunda ters bir SSH tüneli kullanmaya çalıştım, ancak aynı sorunu yaşadım.
Betadan bu şekilde tünel açtım
ssh -Nf -R \*:444:localhost:444 root@[alpha IP]
Ve ana client.conf'u 10.8.0.10 yerine [alpha IP]: 444'e bağlanacak şekilde değiştirdi.
Yapılandırma, yönlendirme ağ geçidi olmadan mükemmel bir şekilde çalıştı, ancak yönlendirme ağ geçidi, 0.0.0.0/1 ve 128.0.0.0/1 rotalarını eklediği anda, hiçbir yere yeniden ping yapamadım.