Warum braucht mein Debian mit mehreren Interfaces mehrere Routing-Tabellen?
Hallo zusammen,
ich spanne über eine MT-Router mehrere VLANs auf, die in der MT-Firewall ausreichend getrennt sind. Das klappt seit einigen Jahren ganz gut.
Jetzt möchte ich gerne auf einer Debian-Maschine Avahi als MDNS-Reflektor einsetzen.
Nach der Anschaffung eines Bonjour-fähigen Druckers, der in einem anderen VLAN ist als die Clients, habe ich Bind mit DNS-SD-Einträgen so eingerichtet, dass auch das iPhone diesen gefunden hat.
Leider musste ich nach dem Upgrade auf iOS17 aber feststellen, dass nun keine DNS-SD-Querys mehr gestellt werden, so dass der Drucker nur per mDNS gefunden wird.
Mit ein bisschen Fummelei läuft der Reflektor jetzt auch problemlos - doch frage ich mich noch, ob diese Fummelei wirklich nötig war oder ob ich nur eine Trivialität übersehen habe?
Der Server hat vier Interfaces, die jeweils in einem anderen VLAN stecken. Alle vier erhalten ihre Konfiguration per DHCP. Damit hat der Reflektor schnell funktioniert, doch waren andere Services auf der Maschine nicht mehr ansprechbar. Auch nachdem ich diese jeweils an ein Interface gebunden hatte, änderte sich das nicht.
Geholfen hat letztendlich, für jedes der Interfaces eine neue Routing-Tabelle anzulegen und diese jeweils mit einer Regel für das in dem VLAN verwaltete Netz und einer Default-Route zum Gateway zu bestücken, hier am Beispiel für ein VLAN_200, zu welchem der Adressbereich 192.168.200.0/24 gehört:
Anschließend habe ich noch eine Routing-Regel pro VLAN angelegt, die dafür sorgt, dass Pakete aus dem jeweiligen VLAN gemäß der jeweiligen Routing-Tabelle bearbeitet werden:
Danach lief es wie gewünscht: ein Dienst, der an das VLAN_200 gebunden war, war auch nur da zu erreichen - aber problemfrei.
Was mich jetzt nur wundert:
Vielleicht könnt Ihr mir hier helfen, mein 90%-Verständnis dessen, was ich da gebastelt habe, auf 100% zu erhöhen...
Danke!
Viele Grüße
Michael
ich spanne über eine MT-Router mehrere VLANs auf, die in der MT-Firewall ausreichend getrennt sind. Das klappt seit einigen Jahren ganz gut.
Jetzt möchte ich gerne auf einer Debian-Maschine Avahi als MDNS-Reflektor einsetzen.
Nach der Anschaffung eines Bonjour-fähigen Druckers, der in einem anderen VLAN ist als die Clients, habe ich Bind mit DNS-SD-Einträgen so eingerichtet, dass auch das iPhone diesen gefunden hat.
Leider musste ich nach dem Upgrade auf iOS17 aber feststellen, dass nun keine DNS-SD-Querys mehr gestellt werden, so dass der Drucker nur per mDNS gefunden wird.
Mit ein bisschen Fummelei läuft der Reflektor jetzt auch problemlos - doch frage ich mich noch, ob diese Fummelei wirklich nötig war oder ob ich nur eine Trivialität übersehen habe?
Der Server hat vier Interfaces, die jeweils in einem anderen VLAN stecken. Alle vier erhalten ihre Konfiguration per DHCP. Damit hat der Reflektor schnell funktioniert, doch waren andere Services auf der Maschine nicht mehr ansprechbar. Auch nachdem ich diese jeweils an ein Interface gebunden hatte, änderte sich das nicht.
Geholfen hat letztendlich, für jedes der Interfaces eine neue Routing-Tabelle anzulegen und diese jeweils mit einer Regel für das in dem VLAN verwaltete Netz und einer Default-Route zum Gateway zu bestücken, hier am Beispiel für ein VLAN_200, zu welchem der Adressbereich 192.168.200.0/24 gehört:
ip route add 192.168.200.0/24 dev $IFACE src $IP_DES_SERVERS_IM_200_NETZ table VLAN_200
ip route add default via 192.168.200.1 table VLAN_200
Anschließend habe ich noch eine Routing-Regel pro VLAN angelegt, die dafür sorgt, dass Pakete aus dem jeweiligen VLAN gemäß der jeweiligen Routing-Tabelle bearbeitet werden:
ip rule add from $IP_DES_SERVERS_IM_200_NETZ table VLAN_200
Danach lief es wie gewünscht: ein Dienst, der an das VLAN_200 gebunden war, war auch nur da zu erreichen - aber problemfrei.
Was mich jetzt nur wundert:
- war das wirklich nötig, oder wäre es einfacher gegangen?
- gibt das "from" in der "ip rule" nicht die Quell-Adresse des Pakets an? Müsste hier dann nicht "192.168.200.0/24" stehen, statt der IP, die der Server im VLAN_200 hat? Trotzdem klappt es.
Vielleicht könnt Ihr mir hier helfen, mein 90%-Verständnis dessen, was ich da gebastelt habe, auf 100% zu erhöhen...
Danke!
Viele Grüße
Michael
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 2137933953
Url: https://administrator.de/contentid/2137933953
Ausgedruckt am: 17.11.2024 um 15:11 Uhr
2 Kommentare
Neuester Kommentar
Hi.
Braucht dein Host eigentlich nicht.. .
... denn anhand der IP-Adressen der Schnittstelle. weiß der Host ja, in welchen Netzen nebst Subnetz (/24 z.B.) er ist..
Aber: eine auf dem Host installiierte Software erwartet ggf. weiterrn Infos - das hängt aber eben von der Softwarr ab ...
.. . auch wenn das m.E. eher ein Programmiermangel ist ...
Braucht dein Host eigentlich nicht.. .
... denn anhand der IP-Adressen der Schnittstelle. weiß der Host ja, in welchen Netzen nebst Subnetz (/24 z.B.) er ist..
Aber: eine auf dem Host installiierte Software erwartet ggf. weiterrn Infos - das hängt aber eben von der Softwarr ab ...
.. . auch wenn das m.E. eher ein Programmiermangel ist ...