Wir haben,
Class Range NetMask Bits Bits hosts#
----------------------------------------------------------
A 0-127 255.0.0.0 8 24 16777216 (i.e. 114.0.0.0)
B 128-191 255.255.0.0 16 16 65536 (i.e. 150.0.0.0)
C 192-254 255.255.255.0 24 8 256 (i.e. 199.0.0.0)
Auch,
$cat /proc/version
Linux version 2.6.32-amd64 (gcc version 4.3.2 (Debian 4.3.2-1.1) ) #1 SMP Tue Jul 1 18:36:07 UTC 2011
$ip route show
114.0.0.0/24 dev eth1 scope link
114.0.0.0/16 dev eth1 scope link
114.0.0.0/8 dev eth1 scope link
199.0.0.0/8 dev eth1 scope link
122.0.0.0/8 dev eth1 scope link
default via 16.107.200.1 dev eth0
default via 16.107.200.1 dev eth1
default via 16.107.200.20 dev eth1
default via 16.107.200.21 dev eth1
default via 16.107.200.22 dev eth1
default via 16.107.200.23 dev eth1
Frage 1.Gemäß der obigen Anzeige erhalte ich mit der Version 2009 von Iproute eine IPv4-Adresse der Klasse A mit Netamsk der Klasse C oder B und umgekehrt. Ist das eine gültige Konfiguration?
Frage 2.Wenn iproute gemäß der obigen Anzeige das Hinzufügen mehrerer Standardrouten zulässt, wie würde sich dann der Paketfluss verhalten, wenn Pakete nur über eine Standardroute geroutet werden müssen (wobei viele Standardrouten vorhanden sind)? Und wie filtert iproute mehrere Standardrouten? Und ist es eine gültige Funktion, dass iproute mehrere Standardrouten in einer Serverkonfiguration zulässt?
Antwort1
A1: Ja, das ist völlig in Ordnung. Classful IP Addressing wurde etwa 1993 abgelöst durchCIDR(Classless Inter-Domain Routing). Auch ohne CIDR wäre dies noch gültig, da Sie einfach „Subnetze“ definiert hätten.
A2: In den meisten Fällen wird die verwendete „Standardroute“ die erste sein, die in der Routing-Tabelle aufgeführt ist. Vereinfacht ausgedrückt durchsucht der Kernel die Routing-Tabelle, bis er eine Entsprechung findet, und überträgt das Paket über die entsprechende Verbindung. In Ihrem Fall wird der meiste „Standard“-Verkehr zur Weiterleitung an 16.107.200.1
Ihre eth0
Schnittstelle gesendet.