Gibt es eine Möglichkeit, einer bestimmten Schnittstellen-IP einen Alias ​​zuzuweisen?

Gibt es eine Möglichkeit, einer bestimmten Schnittstellen-IP einen Alias ​​zuzuweisen?

Ich habe ein VCS unter Debian als Produktionsserver laufen und aufgrund einiger Hypervisor-Probleme musste es in der letzten Woche mehrmals neu gestartet/migriert/aktualisiert werden.

Da ich meine App mit Docker-Containern ausführe, kann ich nicht einfach zulassen, localhostdass sie eine Verbindung zu meinem lokalen Postgres herstellt. Daher verwende ich ens2stattdessen die IP.

ens2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.12.174.3  netmask 255.255.255.254  broadcast 10.12.174.3
        inet6 fe80::dc1c:14ff:fe51:5002  prefixlen 64  scopeid 0x20<link>
        inet6 2001:bc8:4740:205::1  prefixlen 127  scopeid 0x0<global>
        ether de:1c:14:51:50:02  txqueuelen 1000  (Ethernet)
        RX packets 37139  bytes 4801851 (4.5 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 39791  bytes 35291408 (33.6 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Aber bei jedem Neustart ändert sich die IP und ich muss sie manuell in den Umgebungsvariablen ändern, damit meine App wieder auf die Datenbank zugreifen kann. Sie werden mir sicher zustimmen, dass das nicht sehr praktisch ist.

localhostHier ist meine Frage: Gibt es eine Möglichkeit , dieser bestimmten Schnittstelle automatisch einen Alias ​​zuzuweisen, ähnlich wie ?

Ich denke, ich könnte immer noch versuchen, die ifconfigAusgabe zu analysieren, aber ich würde lieber zuerst nach einer tatsächlichen Lösung fragen

Antwort1

DNS.

Pflegen Sie einen Datensatz, den die Anwendung verwenden kann, z. B. appdb.prod.example.org. Da es sich um einen Dienstnamen handelt, sollten Sie einen CNAME für den Host erstellen, der ihn aktuell ausführt.

Aktualisieren Sie einen Namen im DNS jedes Mal, wenn ein Host eine IP erhält. Beispielsweise ein AAAA-Eintrag mit dem container1.example.orgNamen 2001:bc8:4740:205::1. Wie Sie dies genau tun, hängt von Ihrem Nummerierungsschema und Ihrer DNS-Konfiguration ab. Statische IPs können eingegeben werden, sobald sie zugewiesen sind. DHCP-Hooks können zum Aktualisieren von DNS verwendet werden. Und es gibt Software, die jede Schnittstelle auf IP-Änderungen überwacht und ein nsupdate ausführt, wie z. B. autoddns.


Verwenden Sie ifconfig nicht unter Linux, nicht für neue Skripte.Es ist seit mindestens 11 Jahren veraltet.

Antwort2

Könnte immer gebrauchen:

alias ip="hostname -I"

verwandte Informationen