Ubuntu Server 16.04 / Ping über Hostname nur extern

Bruzla

Commodore
Registriert
Okt. 2013
Beiträge
4.136
Servus zusammen,

bei Linux-Sachen steh ich immer wieder aufm Schlauch...

Folgendes: Gerade einen Ubuntu Server aufgesetzt für Zammad. Ich hab in /etc/network/interfaces eine statische IP hinterlegt und da auch die DNS-Server eingetragen. DNS Server sind unter /etc/resolv.conf auch eingetragen.

/etc/resolv.conf schaut so aus:
nameserver xxx.xxx.xxx.xxx
namserver xxx.xxx.xxx.xxx

/etc/network/interfaces schaut so aus:
dns-nameservers xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx


Ich kann auf der Maschine extern alles mögliche Pingen und auflösen. Intern kann ich nur die IP-Adressen pingen, die Hostnamen nicht.
Die Maschine selbst ist auch nur über die IP erreichbar.

Wenn ich im DNS-Server den Eintrag manuell setze, kann ich die Maschine natürlich über den Namen erreichen, von der Maschine aus natürlich trotzdem nicht...

Kann mir jemand helfen?

Danke euch!
 
habs nochmal gelesen jetzt versteh ich bei deiner frage nur Bahnhof.
Hast du dich in die Hostdatei eingetragen?
 
Was verstehst du nicht?

Vom Ubuntu-Server kann ich intern keine Namen pingen. Extern kann ich Namen pingen.

ping server-dc funktioniert nicht
ping google.de funktioniert

ping 192.168.1.10 (server-dc) funktioniert


Kann intern keine Namen auflösen und finde den Fehler nicht.

An der Hostdatei hab ich nichts geändert, sollte auch nicht passieren.
 
Trag den Domain Name ein, dann sollte es gehen.
 
Bei "etc/network/interfaces"?

Wo genau muss ich das ergänzen?

Auf einem anderen Ubuntu-Server ist das auch nicht eingetragen und da funktioniert DNS genauso wie es soll.
 
dns-search example.com
 
Was ist denn dein interner DNS? Wenn du z.B. den DHCP einer Fritzbox verwendest löst sie die Namen im internen Netz auch auf, wenn die anderen Maschinen aber auch feste IPs haben kann die Namen auch niemand auflösen...
 
Daserre schrieb:
Wer soll denn bitteschön irgendwelche internen Namen auflösen? Der Google DNS kennt die Namen in deinem LAN wohl eher nicht...
Die musst du wohl schon entweder von Hand irgendwo in deinen DNS nageln oder wenn dein DHCP auch DNS macht hast du die da natürlich automatisch drin...
 
Trag in deiner resolv.conf mal deine Suchdomäne ein.
Wenn du keine hast hinterleg in deiner /etc/hosts den Server.

/etc/resolv.conf:
search meinedomäne.local

/etc/hosts:
192.168.1.10 server-dc

Wie wird dein Servername denn aufgelöst?
hostname -s
hostname -f
 
Nein, hat es nicht. Und irgendwas in die Hosts-Datei schreiben sollte auch nicht die Lösung sein.

@#12 Das versuche ich, wenn ich wieder soweit bin. Hab die VM gerade neu erstellt, weil ich testen will, wie sich das Ganze mit DHCP verhält.

Auf dem anderen Ubuntu-Server läuft das ganze ohne veränderte Hosts-Datei.

Auch die /etc/network/interfaces und /etc/resolv.conf sind bis auf die letzte Ziffer der IP komplett identisch...
deswegen wundert mich die ganze Sache.
Ergänzung ()

Stype schrieb:
/etc/hosts:
192.168.1.10 server-dc
server-dc war nur ein Beispiel für einen beliebigen Server im Subnetz, du meinst, ich muss einen unserer DNS-Server hinterlegen, oder?

Aber wie gesagt.. muss doch ohne Eintrag in der Hosts-Datei funktionieren.
 
Zuletzt bearbeitet:
Bruzla schrieb:
Nein, hat es nicht. Und irgendwas in die Hosts-Datei schreiben sollte auch nicht die Lösung sein.

@#12 Das versuche ich, wenn ich wieder soweit bin. Hab die VM gerade neu erstellt, weil ich testen will, wie sich das Ganze mit DHCP verhält.

Auf dem anderen Ubuntu-Server läuft das ganze ohne veränderte Hosts-Datei.

Auch die /etc/network/interfaces und /etc/resolv.conf sind bis auf die letzte Ziffer der IP komplett identisch...
deswegen wundert mich die ganze Sache.

Vergiss nicht, dass du über DHCP auch Informationen über Domäne, Hostname usw. mitbekommst, weshalb das out of the box funktionieren sollte. Bei statischen IPs hast du diesen Komfort nicht, weshalb alles händisch eingetragen werden muss.
 
Das stimmt, dennoch ist die Hosts-Datei auf dem anderen 16.04 auch unbearbeitet .... :(
Aber jetzt erstell ich erstmal die VM neu und meld mich dann wieder! :D

Edit: Muss ich bei Ubuntu 16.04 irgendwo hinterlegen, dass er einen statischen DNS verwenden soll?
Ich hab ja vor einiger Zeit den anderen auch aufgesetzt... ich kann mich erinnern, dass ich an DREI Stellen etwas hinterlegen musste, aber die Hosts-Datei wars nicht, die ist ja auf der funktionierenden Maschine auch unverändert.
 
Bruzla schrieb:
Nein, hat es nicht. Und irgendwas in die Hosts-Datei schreiben sollte auch nicht die Lösung sein.

@#12 Das versuche ich, wenn ich wieder soweit bin. Hab die VM gerade neu erstellt, weil ich testen will, wie sich das Ganze mit DHCP verhält.

Auf dem anderen Ubuntu-Server läuft das ganze ohne veränderte Hosts-Datei.

Auch die /etc/network/interfaces und /etc/resolv.conf sind bis auf die letzte Ziffer der IP komplett identisch...
deswegen wundert mich die ganze Sache.
Ergänzung ()


server-dc war nur ein Beispiel für einen beliebigen Server im Subnetz, du meinst, ich muss einen unserer DNS-Server hinterlegen, oder?

Aber wie gesagt.. muss doch ohne Eintrag in der Hosts-Datei funktionieren.

In die /etc/hosts kommen nur spezifische Hosts ein, damit du unabhängig vom DNS bist.

Apropos "es muss auch so gehen"...
Führ mal das hier aus, damit fragst du deinen DNS ab, welche IP Adresse der Host hat.
Ich nehme mal an der Host ist garnicht im DNS eingetragen.
Code:
dig server-dc
 
Ja eben, das Problem ist, dass sich der Ubuntu-Server nicht beim DNS registriert, er Eintrag im DNS fehlte.
 
Bruzla schrieb:
Ja eben, das Problem ist, dass sich der Ubuntu-Server nicht beim DNS registriert, er Eintrag im DNS fehlte.

Wenn du das statisch vergibst, musst du den DNS Eintrag selbst vornehmen, ansonsten musst du DHCP verwenden :-)
 
Als Laie mal laut gedacht. Ich hatte das auch schon mal, dass ich im LAN manches nur über die IP, nicht aber über den Namen erreicht habe, z.B. zwei per VPN gekoppelte Netze. Das lag irgendwie daran, dass über verschiedene Subnetze hinaus kein NetBIOS geht. Also irgendwas mit LAN interner Namensauflösung.
https://de.wikipedia.org/wiki/NetBIOS
Hier als (Windows) Beispiel, wie man die Namenstabelle angucken kann: https://www.tecchannel.de/a/computernamen-mittels-ip-adresse-ermitteln,2039408
https://de.wikipedia.org/wiki/Windows_Internet_Naming_Service
https://de.wikipedia.org/wiki/Zeroconf

Ihm LAN dürfte das also mit DNS nichts zu tun haben, oder?
 
@Wilhelm14 NetBIOS ist eigentlich tot. DNS hat nichts mit Netbios zu tun und gibts eigentlich auch nur unter Windows. Unter Linux gibts das nur bei installiertem Samba.


Bruzla schrieb:
Ja eben, das Problem ist, dass sich der Ubuntu-Server nicht beim DNS registriert, er Eintrag im DNS fehlte.

Stype schrieb:
Wenn du das statisch vergibst, musst du den DNS Eintrag selbst vornehmen, ansonsten musst du DHCP verwenden :-)

Es hängt davon welche DHCP und DNS Dienste du nutzt und wie diese konfiguriert sind. Dynamische DNS Updates ohne DHCP können nur Windows Clients. Hat der host eine Statische IP, funktioniert dieses nicht. Da musst du dann den DNS Eintrag selbst anlegen.

Wenn ein Microsoft DHCP und DNS genutzt wird ist es einfach. Da genügt es beim DHCP Server dynamische DNS Aktualisierung zu aktivieren. Dann erstellt der DHCP Server die DNS Einträge im DNS.
Ggf. muss man auch noch den haken bei "DNS-A und PTR Einträge, für Clients die keine Aktualisierung anfordern..." aktivieren, da nicht alle Linux Systeme dieses von sich aus tun.
 
Die IPs von privaten IP Ranges unkenntlich zu machen bringt überhaupt keine Vorteile für Datenschutz / Sicherheit, erschwert jedoch das Troubleshooting und die Adressen öffentlicher DNS Server muss man auch nicht verschleiern..
Genauso wie es überhaupt hilfreiche wäre das Netzwerk zu kennen, also welche IP-Ranges genutzt werden.

Wenn du den Server in einer VM hast, wie wird dem Gast das Netzwerk dargereicht?
####################

Ansonsten machst du dir nur unnötig arbeit. Gib der Maschine einen in deinem Netzwerk eindeutigen Hostnamen und lass die Interfaces auf DHCP für IPv4 bzw. auto für IPv6. Die Auflösung erledigt dann dein DNS Server deines Routers. Da kann es dir dann auch reichlich egal sein, ob die IPs wechseln.



Edit:
@rocketworm
IPv6 macht Vieles besser, wenn man nur .local auflösen möchte: https://serverfault.com/questions/352632/name-resolution-in-an-ipv6-network-without-a-dns-server Da geht es mitunter auch ganz ohne DNS Server.
 
Zuletzt bearbeitet:
Bruzla schrieb:
Wenn ich im DNS-Server den Eintrag manuell setze, kann ich die Maschine natürlich über den Namen erreichen, von der Maschine aus natürlich trotzdem nicht

DNS ist ein Mechanismus von vielen zur Namensauflösung.
Verantwortlich dafür ist /etc/nsswitch.conf das ist manchmal unterschiedlich konfiguriert.
Auch ohne DNS.
 
Bruzla schrieb:
Wenn ich im DNS-Server den Eintrag manuell setze
Meinst Du die DNS-/DHCP-Serverdienste Deines Routers?
Falls letztere aktiv sind, solltest Du die Router-IP (allein oder zusätzlich - dann aber bitte in der Listung vor den WAN-DNS-Servern) als (LAN-)Nameserver in /etc/resolv.conf & /etc/network/interfaces eingetragen haben. WAN-DNS ermöglicht halt keine Auflösung im LAN.
Das - zusammen mit dem, was ich unten erläutere - würde Dir die ansonsten notwendigen Einträge in /etc/hosts ersparen, die ich nicht für sehr elegant halte.
Bruzla schrieb:
Ich hab in /etc/network/interfaces eine statische IP hinterlegt
Da hätte ich eher den Router (d. h. den DHCP-Serverdienst) so konfiguriert, dass dieser Deinem Ubuntu Server (als DHCP-Client) immer wieder dieselbe IP zuweist.
Bruzla schrieb:
Ja eben, das Problem ist, dass sich der Ubuntu-Server nicht beim DNS registriert, er Eintrag im DNS fehlte.
Falls Du die DNS-/DHCP-Serverdienste Deines Routers verwendest, entsprechend den DHCP-Client auf dem Ubuntu Server aktiviert hast und willst, dass die anderen PCs (ebenfalls als DHCP-Clients konfiguriert) ihn im LAN (nicht im WAN!) unter seinem Hostname finden, darf die Zeile send host-name "<hostname>" in /etc/dhcp/dhclient.conf nicht auskommentiert sein.
Ich weiß nicht, ob jeder DHCP-Server damit umgehen kann - eine FRITZ!Box schon.
 
Zuletzt bearbeitet:
Zurück
Oben