# Unknown host ping



## Shooter2k (10. Juni 2010)

Hallo Forum,
ich habe ein kleines Problem beim auflösen des Hostnamen meines Servers(Debian lenny) im privatem Netzwerk.
Beim anpingen erhalte ich ständig "ping: cannot resolve box: Unknown host"    "box" ist hier der Name des Servers.

meine /etc/hostname :
**************************
box:/etc# cat hostname 
box
box:/etc# 


/etc/hosts :
**************************
box:/etc# cat hosts
127.0.0.1 localhost box.domain.local box

::1             localhost ipv6-localhost ipv6-loopback

fe00::0         ipv6-localnet

ff00::0         ipv6-mcastprefix
ff02::1         ipv6-allnodes
ff02::2         ipv6-allrouters
ff02::3         ipv6-allhosts



Ich vermute mal das der Fehler irgendwo in der /etc/hosts liegen müsste. Vielleicht "box.domain.local" ? Die zugewiesene IP vom Router ist die 192.168.0.156 muss ich die dort auch noch eintragen?


Vielen Dank für die Hilfe
gruß


----------



## Bratkartoffel (10. Juni 2010)

Hallo,

das in der /etc/hostname stimmt schon mal so, da gehört wirklich nur der hosntame und nicht der FQDN rein.
In deiner /etc/resolv.conf ist jedoch kein Nameserver eingetragen, eventuell liegt an dem. Trage daher mal ein "nameserver 127.0.0.1" in diese ein.

Versuche bitte auch mal ein "nslookup box" und poste die Ausgabe falls es fehlschlägt.

Gruß
BK


----------



## Shooter2k (10. Juni 2010)

Nabend BK,
vielen Dank für die schnelle Unterstützung.

Habe in der resolv.conf den Nameserver 127.0.0.1 hinzugefügt

cat /etc/resolv.conf 
nameserver 62.109.123.6
nameserver 213.191.92.87
nameserver 192.168.0.1
nameserver 127.0.0.1

Ein nslookup ergibt:
box:/etc# nslookup box
Server:		62.109.123.6
Address:	62.109.123.6#53

** server can't find box: NXDOMAIN


Danke noch mal 
gruß
Henry


----------



## Bratkartoffel (11. Juni 2010)

Hallo,

das Problem liegt vermutlich an der Reihenfolge, wie die DNS-Server in der resolv.conf angegeben sind.
Wenn eine Namensauflösung gemacht werden muss, wird zuerst der erste Server gefragt. Wenn dieser nicht online ist oder nicht reagiert, wird der zweite verwendet und so weiter.
Dein nslookup fragt zuerst einen externen DNS-Server (62.109.123.6 also den ersten in der Liste) nach der IP zu dem Hostnamen. Dieser gibt zurück, dass er den Host nicht kennt.

Sortier mal deine resolv.conf wie folgt um:

```
nameserver 127.0.0.1
nameserver 192.168.0.1
nameserver 62.109.123.6
nameserver 213.191.92.87
```

Die Ausgabe von nslookup hatte ich etwas "präziser" in Erinnerung  Mach dann zum Testen bitte mal ein "host -v box" anstatt des nslookups.

Gruß
BK


----------



## deepthroat (11. Juni 2010)

Hi.





Bratkartoffel hat gesagt.:


> Sortier mal deine resolv.conf wie folgt um:
> 
> ```
> nameserver 127.0.0.1
> ...


Da wäre nun erstmal die Frage ob auf 127.0.0.1 überhaupt ein DNS Server (z.B. dnsmasq) läuft.


Bratkartoffel hat gesagt.:


> Die Ausgabe von nslookup hatte ich etwas "präziser" in Erinnerung


In diesem Jahrtausend verwendet man dig 

@Shooter2k: auf welcher Maschine führst du denn das ping aus? Auf "box" sollte es ja funktionieren, oder?

Ansonsten müßtest du deinem Router beibringen auch Namen der verbundenen Rechner aufzulösen.

Gruß


----------



## Shooter2k (11. Juni 2010)

Hallo habe die resolv.conf umsortiert:

box:/etc# cat /etc/resolv.conf 

```
nameserver 127.0.0.1
nameserver 192.168.0.1
nameserver 62.109.123.6
nameserver 213.191.92.87
```

"dnsmasq" läuft bereits.


"host -v box" auf box ergibt folgendes:


```
rying "box"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4596
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;box.				IN	A

;; ANSWER SECTION:
box.			0	IN	A	127.0.0.1

Received 37 bytes from 127.0.0.1#53 in 37 ms
Trying "box"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58150
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;box.				IN	AAAA

Received 21 bytes from 127.0.0.1#53 in 0 ms
Trying "box"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58950
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;box.				IN	MX

Received 21 bytes from 127.0.0.1#53 in 590 ms
```

Und mit dig:


```
box:/etc# dig box

; <<>> DiG 9.5.1-P3 <<>> box
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4999
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;box.				IN	A

;; ANSWER SECTION:
box.			0	IN	A	127.0.0.1

;; Query time: 2 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Jun 11 16:23:11 2010
;; MSG SIZE  rcvd: 37
```

Das anpingen auf box funktioniert und zeigt auf 127.0.0.1
Leider bietet mein Router nicht die Funktion Hostnamen zu vergeben. Was ja nun eigentlich nicht im sinne des Erfinders ist, habe die 192.168.0.156 box direkt in der "hosts" meines Clients eingetragen. Falls es allerdings eine elegantere Lösung dazu gibt, freue ich mich. 

Danke
gruß


----------



## deepthroat (12. Juni 2010)

Shooter2k hat gesagt.:


> Das anpingen auf box funktioniert und zeigt auf 127.0.0.1


Was ja eigentlich auch Unsinn ist. 127.0.0.1 ist localhost und nicht box.

box sollte 192.168.0.156 sein.

Wenn du von einem Client-Rechner den dnsmasq auf box fragst welche IP "box" hat und der dnsmasq liefert 127.0.0.1, dann nützt dir das überhaupt nichts.


Shooter2k hat gesagt.:


> Leider bietet mein Router nicht die Funktion Hostnamen zu vergeben.


Evtl. würde es sich lohnen die Firmware deines Routers durch OpenWrt o.ä. zu ersetzen (falls der Router unterstützt wird).


Shooter2k hat gesagt.:


> Was ja nun eigentlich nicht im sinne des Erfinders ist, habe die 192.168.0.156 box direkt in der "hosts" meines Clients eingetragen. Falls es allerdings eine elegantere Lösung dazu gibt, freue ich mich.


Wozu hast du denn dnsmasq auf box laufen?

Falls box einen DNS Service anbieten soll, dann mußt du auch dessen IP als DNS Server auf den Clients eintragen. Dazu wäre es aber sinnvoll die IP-Adresse von box _statisch_ in der Router-Konfiguration festzulegen, sonst könnte es passieren dass der DNS Server nicht gefunden wird.

Dazu würde es ja ausreichen wenn der Router über DHCP box als DNS Server an die anderen Rechner meldet.

Gruß


----------

