Ben iki arayüzü ile bir Crunchbang VM var eth0ve eth1her biri bir OpenWRT VM ( eth0varlık 10.232.64.20ve
eth1varlık 10.232.65.20) bağlanır . Ağ Yöneticisi ve DHCP kullanıyorum. Genel hedefim birden fazla sshbağlantıya sahip olmak ve onları birbirine bağlamak ifenslave.
Varsayılan olarak, eth1(bazı nedenlerden dolayı) varsayılan ağ geçididir:
user@crunchbang:~$ ip ro
default via 10.232.65.1 dev eth1 proto static
10.232.64.0/24 dev eth0 proto kernel scope link src 10.232.64.20
10.232.65.0/24 dev eth1 proto kernel scope link src 10.232.65.20
Şunun için bir rota ekledim eth0:
user@crunchbang:~$ sudo ip route add default via 10.232.64.1 dev eth0 proto static metric 1
Sonra iki güzergahım var:
user@crunchbang:~$ ip ro
default via 10.232.65.1 dev eth1 proto static
default via 10.232.64.1 dev eth0 proto static metric 1
10.232.64.0/24 dev eth0 proto kernel scope link src 10.232.64.20
10.232.65.0/24 dev eth1 proto kernel scope link src 10.232.65.20
Ancak, sshyalnızca şu yollarla çıkar eth1:
user@crunchbang:~$ ssh -b 10.232.64.20 user@1.2.3.4
ssh: connect to host 1.2.3.4 port 22: Connection timed out
user@crunchbang:~$ ssh -b 10.232.65.20 user@1.2.3.4
Enter passphrase for key '/home/user/.ssh/id_rsa':
Metriği değiştirdikten sonra eth0:
user@crunchbang:~$ ip ro
default via 10.232.64.1 dev eth0 proto static metric 1
default via 10.232.65.1 dev eth1 proto static metric 2
10.232.64.0/24 dev eth0 proto kernel scope link src 10.232.64.20
10.232.65.0/24 dev eth1 proto kernel scope link src 10.232.65.20
Ve şimdi sshsadece üzerinden eth0:
user@crunchbang:~$ ssh -b 10.232.64.20 user@1.2.3.4
Enter passphrase for key '/home/user/.ssh/id_rsa':
user@crunchbang:~$ ssh -b 10.232.65.20 user@1.2.3.4
ssh: connect to host 1.2.3.4 port 22: Connection timed out
Daha sshyüksek bir metriğe sahip bir arayüzü kullanmaya nasıl zorlarım?
Düzenle
4.2'deki yapılandırmayı uyguladım ve test ettim . Linux Gelişmiş Yönlendirme ve Trafik Kontrolü NASIL belgesinin birden fazla uplink / sağlayıcı bölümü için yönlendirme. Yapılandırmanın basit olduğu ve hatalarla karşılaşmadığım göz önüne alındığında, minimum açıklama ile sadece kod ve sonuçları göstereceğim.
root@crunchbang:~# ip route add 10.232.64.0/24 dev eth0 src 10.232.64.20 table T0
root@crunchbang:~# ip route add default via 10.232.64.1 table T0
root@crunchbang:~# ip route add 10.232.65.0/24 dev eth1 src 10.232.65.20 table T1
root@crunchbang:~# ip route add default via 10.232.65.1 table T1
root@crunchbang:~# ip route flush table main
root@crunchbang:~# ip route add 10.232.64.0/24 dev eth0 src 10.232.64.20
root@crunchbang:~# ip route add 10.232.65.0/24 dev eth1 src 10.232.65.20
root@crunchbang:~# ip rule add from 10.232.64.20 table T0
root@crunchbang:~# ip rule add from 10.232.65.20 table T1
root@crunchbang:~# ip route add default scope global nexthop via 10.232.64.1 dev eth0 weight 1 nexthop via 10.232.65.1 dev eth1 weight 1
Oluşturulan yönlendirme tabloları şunlardır:
root@crunchbang:~# ip route show table T0
default via 10.232.64.1 dev eth0
10.232.64.0/24 dev eth0 scope link src 10.232.64.20
root@crunchbang:~# ip route show table T1
default via 10.232.65.1 dev eth1
10.232.65.0/24 dev eth1 scope link src 10.232.65.20
root@crunchbang:~# ip ro
default
nexthop via 10.232.64.1 dev eth0 weight 1
nexthop via 10.232.65.1 dev eth1 weight 1
10.232.64.0/24 dev eth0 scope link src 10.232.64.20
10.232.65.0/24 dev eth1 scope link src 10.232.65.20
Bu yapılandırmada, ssh her iki arabirime de bağlanır:
user@crunchbang:~$ ssh -b 10.232.64.20 user@1.2.3.4
Enter passphrase for key '/home/user/.ssh/id_rsa':
user@crunchbang:~$ ssh -b 10.232.65.20 user@1.2.3.4
Enter passphrase for key '/home/user/.ssh/id_rsa':
Ancak, Ağ Yöneticisi'ni kaybetmem gerektiği anlaşılıyor. Herkes bunun neden kötü bir fikir olduğunu açıklayabilir veya tuzaklara karşı uyarırsa, bunu takdir ediyorum.
Edit2
Ağ Yöneticisi'nin kaldırılması iyi gitti. Son bir sorum var. Yapılandırmayı önyüklemede yüklemenin geçerli standart yolu nedir?