
Ich habe eine Subschnittstelle auf einer RHEL-Box erstellt, eth0:1
die Konfiguration kopiert eth0
und alle Einstellungen geändert, um eth0:1
die IP-Adresse widerzuspiegeln. Wenn ich jedoch ifup eth0:1
eine Fehlermeldung ausführe, erhalte ich diese:
[root@server-1 ~]# ifup eth0:1
Error, some other host already uses address 192.168.0.2.
[root@server-1 ~]# ping -c 1 192.168.0.2
PING 192.168.0.2 (192.168.0.2) 56(84) bytes of data.
--- 192.168.0.2 ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 10000ms
Wenn ich jedoch Folgendes eingebe: ifconfig eth0:1 192.168.0.2 up
funktioniert der Befehl und es treten keine Fehler auf. Ich würde den späteren Befehl verwenden, aber wenn ich ihn verwende, stört er meine primäre eth0
Schnittstelle und bringt das Routing meines DNS-Verkehrs durcheinander, da er sich im selben Subnetz wie die Subschnittstelle befindet eth0:1
. Ich werde einen weiteren Beitrag zum DNS-Problem verfassen.
Dies sind die Konfigurationen der Schnittstellen
[root@server-1 network-scripts]# cat ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:50:56:AF:0C:06"
IPADDR="192.168.0.1"
IPV6INIT="yes"
NETMASK="255.255.255.0"
ONBOOT="yes"
TYPE="Ethernet"
DNS1="192.168.2.10"
DNS2="192.168.3.10"
[root@server-1 network-scripts]# cat ifcfg-eth0:1
DEVICE="eth0:1"
BOOTPROTO="static"
HWADDR="00:50:56:AF:0C:06"
IPADDR="192.168.0.2"
IPV6INIT="yes"
NETMASK="255.255.255.0"
ONBOOT="no"
TYPE="Ethernet"
DNS1="192.168.2.10"
DNS2="192.168.3.10"
ip addr show
[root@server-1 network-scripts]# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:50:56:AF:0c:06 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.1/24 brd 192.168.0..255 scope global eth0
inet 192.168.2.1/30 brd 192.168.2.3 scope global eth0:2
inet 192.168.2.5/30 brd 192.168.2.7 scope global eth0:3
inet6 fe80::250:56ff:fe97:c06/64 scope link
valid_lft forever preferred_lft forever
Antwort1
Diese Meldung wird entweder von /etc/sysconfig/network-scripts/ifup-eth
oder /etc/sysconfig/network-scripts/ifup-aliases
durch den ifcfg-ethX
Prozesskonfigurationsdateien zum Konfigurieren von Netzwerkschnittstellen generiert.
Wenn Sie die Skripte genauer prüfen, werden Sie feststellen, dass dieser Fehler nach arping
einem Befehl auftritt, der versucht herauszufinden, ob die in ifcfg-ethX
den Dateien angegebenen IP-Adressen im Netzwerk eindeutig sind.
Die Skripte versuchen, doppelte Konfigurationen im Netzwerk zu vermeiden. Ifconfig
Das ist egal, sie fügen der Schnittstelle einfach die IP-Adresse hinzu. Überprüfen Sie Ihre Konfigurationsdateien zweimal, da einige IP-Adressen möglicherweise doppelt vorhanden sind.
Abschließend sei erwähnt, dass Sie ARPCHECK=no
eine Direktive in ifcfg-ethX
eine Datei eingeben können, um diese Prüfung zu deaktivieren.
Antwort2
Ich habe das herausgefunden, nachdem ich die Antwort von dsmsk80 gelesen und im ifup-eth-Skript nachgesehen hatte. Die Schlüsselzeile ist diese:
/sbin/arping -c 2 -w 3 -D -I <INTERFACE> <VLAN>
Also für das OP-Beispiel:
/sbin/arping -c 2 -w 3 -D -I eth0:1 192.168.0.2
Etwas, bei dem ich dies kürzlich verwendet habe, hat Folgendes zurückgegeben:
> /sbin/arping -c 2 -w 3 -D -I eth0.1508 192.168.8.1
ARPING 192.168.8.1 from 0.0.0.0 eth0.1508
Unicast reply from 192.168.8.1 [00:1C:C4:A1:D8:39] 0.605ms
Sent 1 probes (1 broadcast(s))
Received 1 response(s)
Ich konnte dann diese MAC-Adresse (00:1C:C4:A1:D8:39) nehmen und sie im Abschnitt „Dynamische Adressen“ meines Switches nachschlagen. Dadurch wurden mir wiederum die VLAN- und Portnummern der Schnittstelle angezeigt, die diese IP bereits verwendete.