
Ich habe gerade einen Ubuntu-Server 9.10 auf einer EEEBox installiert. Dies ist meine /etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback
auto wlan0 iface wlan0 inet static
address 192.168.48.16
netmask 255.255.248.0
wireless-essid mynet
auto eth0
iface eth0 inet static
address xx.xx.xx.xx
netmask 255.255.255.224
gateway xx.xx.yy.yy
Wenn ich neu starte /etc/init.d/networking
, kann ich über das Internet auf die IP-Adresse eth0 zugreifen und die Maschinen in meinem WLAN-Netzwerk mynet anpingen. Alles funktioniert einwandfrei und ich habe ein Standard-Gateway.
Aber wenn ich die Route nach einiger Zeit noch einmal überprüfe, finde ich nur zwei Standard-Gateways: eines ist korrekt und ist das vorherige, aber das andere ist das des WLAN-Netzwerks.
Ich habe ein ziemlich schwaches Mynet-Signal, wo mein Server ist, und manchmal wird die WLAN-Verbindung einfach getrennt und dann wieder hergestellt. Dann denke ich, dass dies ein Problem sein kann und dass der DHCP des WLAN-Netzes beim erneuten Verbinden auch ein Standard-Gateway hinzufügt. Irgendeine Idee, wie man dieses Problem lösen kann?
Antwort1
Aus:http://www.linuxhorizon.ro/iproute2.html
Sie könnten so etwas versuchen:
echo "1 admin" >> /etc/iproute2/rt_tables
ip route add 192.168.48.16/24 dev wlan0 src 192.168.48.16 table admin
ip route add default via 192.168.48.16 dev wlan0 table admin
ip rule add from xx.xx.xx.xx/32 table admin
ip rule add to xx.xx.xx.xx/32 table admin
ip rule add from 192.168.48.16/32 table admin
ip rule add to xx.xx.xx.xx/32 table admin
Achtung, ungetestet. Es sollte aber sicherstellen, dass der über Schnittstelle X eingehende Datenverkehr diese auch verlässt.
Antwort2
Was ichglaubenpassiert, ist, dass von irgendwoher ein DHCP-Client gestartet wird – und eine zweite Standardroute erhält.
Anstatt diesen zweiten Standardweg zu meiden und ihn in die Tiefen der Hölle zu verbannen, aus denen er kam, wie wäre es, wenn wir ihn behalten – aber nur, wenn Ihr kabelgebundenes Netzwerk verschwindet?
Dazu legen wir die Schnittstellenmetrik der Verbindungen fest, sodass Ihr kabelgebundenes Ethernet dem drahtlosen Netzwerk vorgezogen wird (sofern es aktiv ist).
Betrachten Sie die Metrik als „Kosten“ – das Betriebssystem verwendet zuerst den Netzwerkadapter mit der niedrigsten Metrik.
Das Betriebssystem verwendet diese Schnittstelle mit der höheren Metrik nur, wenn keine Schnittstellen mit einer niedrigeren Metrik vorhanden sind.
# The loopback network interface
auto lo
iface lo inet loopback
auto wlan0
iface wlan0 inet static
address 192.168.48.16
netmask 255.255.248.0
wireless-essid mynet
metric 100
auto eth0
iface eth0 inet static
address xx.xx.xx.xx
netmask 255.255.255.224
gateway xx.xx.yy.yy
metric 50
Antwort3
Einige unkonventionelle Antworten:
Deaktivieren Sie WLAN, wenn Sie es nicht verwenden.
Richten Sie Ihren DHCP-Server so ein, dass er die Standardroute mit einer höheren Metrik (z. B. 2) ausgibt, sodass die kabelgebundene Standardroute immer bevorzugt wird, wenn eine Verbindung besteht.