Sowohl DHCP- als auch statische IP-Adressen gleichzeitig an einer Schnittstelle

13

Wir können in Linux (eg. eth0:0, eth0:1) mehrere IP-Adressen für eine einzelne Schnittstelle verwenden. Aber können wir gleichzeitig DHCP und statische IP verwenden? eth0:1 sollte eine statische IP-Adresse haben und eth0:0 sollte mit DHCP konfiguriert werden.

Wie können wir beides erreichen?

    
shantanu 21.04.2014, 20:06
quelle

3 Antworten

9

Ja, das kann gemacht werden. Allerdings würden Sie dafür eth0 und eth0: 0 anstelle von eth0: 0 und eth0: 1 verwenden. Sie könnten Ihre / etc / network / interfaces-Datei wie folgt einrichten:

auto lo eth0 eth0:0
iface lo inet loopback

iface eth0 inet dhcp

iface eth0:0 inet static
    address ...
    netmask ...

Wahrscheinlich möchten Sie kein Gateway auf der eth0: 0-Schnittstelle einrichten, da dies zu den Gateway-Einstellungen führen könnte, die Sie von DHCP erhalten. Wenn Sie manuelle Einstellungen in / etc / network / interfaces eingeben, sollten Sie sicherstellen, dass der Netzwerk-Manager nicht versucht, Ihre Einstellungen zu verwalten. Dies wird hier behandelt .

    
jkt123 22.04.2014, 01:55
quelle
8

Nach intensiver Suche nach einer Antwort auf das gleiche Problem habe ich eine Lösung ausgearbeitet, mit der Network Manager Ihre Verbindungen weiterhin verwalten kann. Erstellen Sie zuerst eine normale DHCP-Verbindung in Network Manager, indem Sie Verbindungen bearbeiten & gt; Hinzufügen. Dadurch wird eine Datei in / etc / NetworkManager / system-connections / erstellt. Öffnen Sie diese Datei in Ihrem Texteditor mit Super User-Berechtigungen. Beispiel: sudo nano / etc / NetworkManager / Systemverbindungen / DHCPEthernet

Der Code sieht etwa so aus:

[802-3-ethernet]
duplex=full
mac-address=00:0E:C6:88:31:43

[connection]
id=DHCPEthernet
uuid=26af83f1-c48c-4454-9038-bbb4bec3e3a3
type=802-3-ethernet
timestamp=1405008541

[ipv6]
method=auto

[ipv4]
method=auto

Fügen Sie eine Zeile unter dem Abschnitt ipv4 für die statische IP-Adresse hinzu, die Sie hinzufügen möchten. Ich verwende 192.168.10.1 ohne Gateway für dieses Beispiel

address1=192.168.10.1/24,0.0.0.0

Speichern Sie die Datei, und verwenden Sie den Netzwerk-Manager, um die Verbindung zu trennen und die Verbindung zum Netzwerk wiederherzustellen. Ping wird bestätigen, dass beide IP-Adressen richtig funktionieren. Die Ausgabe von ip addr bestätigt den Erfolg.

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 14:10:9f:d7:22:0b brd ff:ff:ff:ff:ff:ff
    inet 172.20.1.71/24 brd 172.20.1.255 scope global wlan0
       valid_lft forever preferred_lft forever
    inet6 fe80::1610:9fff:fed7:220b/64 scope link 
       valid_lft forever preferred_lft forever
3: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0e:c6:88:31:43 brd ff:ff:ff:ff:ff:ff
    inet 172.20.1.60/24 brd 172.20.1.255 scope global eth2
       valid_lft forever preferred_lft forever
    inet 192.168.10.1/24 brd 192.168.10.255 scope global eth2
       valid_lft forever preferred_lft forever
    inet6 fe80::20e:c6ff:fe88:3143/64 scope link 
       valid_lft forever preferred_lft forever
    
Andrew Vian 10.07.2014 19:41
quelle
2

Ich habe ein wenig nachgeschaut und herausgefunden, dass es heutzutage möglich ist, diese Konfiguration mit dem Tool nmcli zu erstellen. In der Tat ermöglicht es die vollständige Kontrolle über NetworkManager. Die Manpages für nmcli sind sehr gründlich und ziemlich verständlich. Siehe man nmcli und man nm-settings .

Um die Konfiguration in dieser Frage einzurichten, ist es am einfachsten, Ihr aktuelles Verbindungsprofil zu bearbeiten. Finden Sie den Namen des Profils aus Ihrem GUI NetworkManager Tool und bearbeiten Sie es mit dem CLI-Editor (hier ist der Name Ethernet connection ):

$ sudo nmcli c edit 'Ethernet connection'

===| nmcli interactive connection editor |===

Editing existing '802-3-ethernet' connection: 'Ethernet connection 1'

Type 'help' or '?' for available commands.
Type 'describe [.]' for detailed property description.

You may edit the following settings: connection, 802-3-ethernet (ethernet), 802-1x, dcb, ipv4, ipv6
nmcli> goto ipv4
You may edit the following properties: method, dns, dns-search, dns-options, dns-priority, addresses, gateway, routes, route-metric, ignore-auto-routes, ignore-auto-dns, dhcp-hostname, dhcp-send-hostname, never-default, may-fail, dad-timeout, dhcp-timeout, dhcp-client-id, dhcp-fqdn
nmcli ipv4> set ipv4.addresses {your_address_here}/{your_network_prefix_here}
Do you also want to set 'ipv4.method' to 'manual'? [yes]: no
nmcli ipv4> save
Connection 'Ethernet connection' (87fa8e41-7fe3-435a-a2f2-29a9c8084d2d) successfully updated.
nmcli ipv4> quit

Bolded Portions sind Ihre Eingaben, ersetzen Sie Dinge in geschweiften Klammern durch Ihre Einstellungen. Wenn Sie no auf die Frage zu ipv4.method antworten, bleibt die DHCP-Konfiguration erhalten. Danach müssen Sie die Konfiguration deaktivieren und wieder aktivieren, was mit Hilfe von GUI-Tools oder nmcli geschehen kann.

Wenn Sie möchten, können Sie auch eine neue Verbindung über die Befehlszeile erstellen:

sudo nmcli -p connection add type ethernet ifname {your_interface_name} con-name MyConnection -- ipv4.addresses {your_address}/{your_prefix_length} ipv4.method auto

Ersetzen Sie wieder Dinge in geschweiften Klammern durch Ihre Einstellungen.

Wenn Sie die Konfigurationsdateien noch immer bearbeiten möchten, denken Sie daran, die Datei nach der Bearbeitung erneut zu laden:

sudo nmcli connection reload

Beachten Sie, dass Konfigurationen, die auf diese Weise erstellt werden, wahrscheinlich die GUI-Tools verwirren. Bestenfalls werden sie Ihnen die statischen Adressen nicht zeigen.

    
Ville Koivunen 01.05.2018 16:24
quelle

Tags und Links