Weisen Sie Linux eine lokale Linkadresse zu und verwenden Sie DNS-SD / SSDP

Für Geräte, die in einer Umgebung ohne DHCP automatisch eine lokale Linkadresse (IPv4) erhalten Wie man APIPA unter Ubuntu / Debian benutzt und wie man es für die automatische Konfiguration entdeckt

Vorbereitung

Installation der erforderlichen Pakete

Wenn Sie nur APIPA spielen, können Sie den Zweck mit avahi-autoipd erreichen

sudo apt-get install -y avahi-autoipd

Als verwandte Tools Avahi-Daemon und Avahi-Utils, da es Fälle gibt, in denen Namen und Dienste aufgelöst werden. Wenn Sie mit SSDP erkennen möchten, fügen Sie außerdem gupnp-tools hinzu.

sudo apt-get install -y avahi-utils gupnp-tools

Aufbau

Wenn Sie es mit eth2 verwenden möchten, fügen Sie Folgendes zu / etc / network / interfaces hinzu. Mit dieser Einstellung wird APIPA auf die eth2: avahi-Schnittstelle angewendet.

/etc/network/interfaces


auto eth2
iface eth2 inet manual
  up /usr/sbin/avahi-autoipd -D --force-bind eth2
  down /usr/sbin/avahi-autoipd -k eth2

Verwenden

Einfach die Schnittstelle hoch

sudo ifup eth2

Bestätigung

root@buster:~# ip -4 a
...
4: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    inet 169.254.5.253/16 brd 169.254.255.255 scope link eth2:avahi
       valid_lft forever preferred_lft forever

Lösen Sie die IP eines bekannten Namens auf

Wenn Sie den Namen kennen, löst mDNS den Namen in der lokalen Domäne auf. Wenn Sie beispielsweise eine Maschine namens fs lösen möchten, "ping fs.local"

Versuchen Sie, die Serviceliste mit DNS-SD anzuzeigen

avahi-browse -al

Wenn Sie es ausführen, sieht es so aus

root@buster:~# avahi-browse -al
+   eth1 IPv4 amzn.dmgr:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx:xxxxxxxxxx:##### _amzn-wplay._tcp     local
+   eth1 IPv4 fs - SSH                                      SSH Remote Terminal  local
+   eth1 IPv4 fs - SMB/CIFS                                 Microsoft Windows Network local
+   eth1 IPv4 fs - NFS - home                               Network File System  local
+   eth1 IPv4 Google-Home-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx  _googlecast._tcp     local
+   eth1 IPv4 Chromecast-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx   _googlecast._tcp     local

Wenn Sie der Option r hinzufügen, werden sogar die IP-Adresse und der Port aufgelöst und angezeigt.

Versuchen Sie, die Geräteliste mit SSDP anzuzeigen

Geben Sie die Schnittstelle an und verwenden Sie gssdp-remove

gssdp-discover -i eth2:avahi

root@buster:~# gssdp-discover -i eth2:avahi --timeout=3
Using network interface eth2:avahi
Scanning for all resources
Showing "available" messages
resource available
  USN:      uuid:1a78e91b-d86d-11ea-8157-080027e8f737::upnp:rootdevice
  Location: http://169.254.86.237:1900/ddd.xml

Recommended Posts

Weisen Sie Linux eine lokale Linkadresse zu und verwenden Sie DNS-SD / SSDP
Anfänger! Grundlegende Linux-Befehle und Verwendung!
[Linux] [C / C ++] So ermitteln Sie den Wert der Rücksprungadresse einer Funktion und den Funktionsnamen des Aufrufers
Eine super Einführung in Linux
So richten Sie OMC Log Analytics ein und verwenden es - Linux-Version-
[sed] Verwenden Sie sed, um Tabulatorzeichen unter MacOS und Linux zu ersetzen
So installieren und verwenden Sie Tesseract-OCR
Ein Memorandum zur Umstellung auf Manjaro Linux
Verwendung von .bash_profile und .bashrc
So installieren und verwenden Sie Graphviz
Stellen Sie von Python aus eine Verbindung zu postgreSQL her und verwenden Sie gespeicherte Prozeduren in einer Schleife.
Verwenden Sie eine Verknüpfung, um das Touchpad in Linux Mint zu aktivieren oder zu deaktivieren
Erstellen Sie Linux in einer Windows-Umgebung. Schritte zum Installieren und Migrieren von Laradock
[Linux] Unterteilen von Dateien und Ordnern
So teilen und speichern Sie einen DataFrame
So installieren und verwenden Sie pandas_datareader [Python]
[Linux] Verwendung des Befehls echo
Programmgesteuert eine lokale IP-Adresse abrufen
Python: Verwendung von Einheimischen () und Globalen ()
Verwendung von Python zip und Aufzählung
Verwendung ist und == in Python
Verwendung von pandas Timestamp und date_range
Flutter in Docker - Erstellen und Verwenden einer Flutter-Entwicklungsumgebung in einem Docker-Container
Stellen Sie unter Linux (Ubuntu) das Trackpad ein und stellen Sie die Funktion auf Drei-Finger-Wischen ein
Tool zum Einfügen des Ländernamens und des Ländercodes in einen Teil der IP-Adresse