Binden Sie an verschiedenen Ports mit Linux

1756
Mini Fridge

Ich habe einen bind9-DNS-Server, den ich für die Ausführung in Port 55 konfiguriert habe, das Setup kann jedoch nicht ausgeführt werden. Der Server funktioniert einwandfrei, aber ich kann meinen lokalen Computer nicht so einstellen, dass Nameserver-Abfragen von 127.0.0.1, Port 55, aufgelöst werden

Beispiel:

dig -p 55 a1.mylocalinstance.dip ... ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2  ;; QUESTION SECTION: ;a1.mylocalinstance.dip. IN A  ;; ANSWER SECTION: a1.mylocalinstance.dip. 10800 IN A 192.168.1.107  ;; AUTHORITY SECTION: mylocalinstance.dip. 10800 IN NS ns.mylocalinstance.dip.  ;; ADDITIONAL SECTION: ns.mylocalinstance.dip. 10800 IN A 192.168.1.100  ;; Query time: 0 msec ;; SERVER: 127.0.0.1#55(127.0.0.1) ;; WHEN: Fri Dec 18 00:20:54 EET 2015 ;; MSG SIZE rcvd: 96 

Wenn ich versuche, auf meinem Server zu ssh:

$ssh test@a1.mylocalinstance.dip ssh: Could not resolve hostname a1.mylocalinstance.dip: Name or service not known 

Meine /etc/resolv.conf -Datei:

nameserver [127.0.0.1]:55 nameserver fe80::1%wlan0 

Ich verstehe nicht die Beziehungsabhängigkeiten zwischen dem Netzwerkmanager und dem Resolver und wie man Dinge in meinem Port bindet und wie ich meine DNS-Anfragen an Port 55 weiterleiten kann.

3
Ich habe noch nie ein Betriebssystem gesehen (und ich habe schon einige verwendet), mit dem Sie den Port für die DNS-Auflösung angeben können. Sie werden wahrscheinlich sowohl TCP als auch UDP versuchen, aber immer an Port 53. Das Beste, was Sie tun können, ist die Verwendung von IP-Tabellen, um den Verkehr von UDP \ 53 zu UDP \ 55 umzuleiten. Ein Beispiel für eine Portumleitung finden Sie hier: http://www.cyberciti.biz/faq/linux-port-redirection-with-iptables/ Letztendlich glaube ich jedoch, dass Sie ohne Ursache einen ungezähmten Ornithoid jagen. Auf der Manualpage resolv.conf wird ein Doppelpunkt in 'nameserver' den Eindruck erwecken, dass es sich um eine IPv6-Adresse handelt. http://linux.die.net/man/5/resolv.conf Frank Thomas vor 8 Jahren 1
@FrankThomas Kann sich ein anderer Dienst in Port 53 einbinden? Das ist der ganze Grund für die Migration zu Port 55. Ich finde es absurd, dass es keine solche Funktionalität gibt Mini Fridge vor 8 Jahren 0
Nein, die Portumleitung würde den umgeleiteten Port nicht zugänglich machen. Frank Thomas vor 8 Jahren 0
Das Problem bei der Änderung dieses bekannten Ports besteht darin, dass Sie keinen erreichbaren autorisierenden DNS-Server erstellen können. Im Protokoll gibt es keine Möglichkeit, anderen Nameservern mitzuteilen, dass es sich bei dem zu verwendenden Port um etwas anderes als 53 handelt. Man könnte es als Defizit ansehen, aber in der Praxis war dies nie nötig. Es gibt einen saubereren Weg, um das zu erreichen, was Sie möchten. milli vor 8 Jahren 0

1 Antwort auf die Frage

0
joat

Denken Sie daran, dass Port 53 der Zielport (des DNS-Servers) ist, ob auf dem lokalen Computer oder anderswo. Die einzige Möglichkeit, eine Verbindung zu einem DNS-Server an Port 55 herzustellen, wäre die Verwendung eines iptables-Befehls. Solange /etc/resolv.conf auf einen anderen Rechner verweist, kann jeder andere Dienst auf Port 53 der lokalen Box ausgeführt werden (obwohl Sie zum Ausführen als root angemeldet sein müssten und mir kein guter Grund dafür einfällt so).

NetManger liest eine Konfigurationsdatei (in Debian-Varianten / etc / network / interfaces) und schreibt die Datei /etc/resolv.conf beim Start (normalerweise beim Booten). Mit anderen Worten, NetworkManager ist nur ein Programm, das die von anderen Programmen verwendeten Konfigurationsdateien schreibt und / oder die Programme / Skripts aufruft, um diese Konfigurationsdateien zu verwenden.