Hallo zusammen,
ich habe es geschafft, einen MCU ans Ethernet anzubinden.
Wenn ich den DHCP client einschalte, bekommt die MCU eine IP adresse vom
DHCP server in der Fritz-Box zugewiesen.
Ich kann die MCU, (z.B. Webserver) über die IP Adresse oder den
host-namen "http://Gerätename/" ansprechen.
Wenn ich der MCU aber eine feste IP adresse zuweise und den DHCP client
abschalte, komme ich an die MCU nur noch über die IP adresse ran.
Über den Host namen gegt es nicht mehr.
Ist das normal so bei Internetgeräten ?
Dirk F schrieb:>> Ist das normal so bei Internetgeräten ?
Ja. Die Auflösung Name -> IP macht deine Fritzbox.
Wenn die IP-Adresse nicht von der Fritzbox vergeben wurde, sondern von
dir, dann musst acuh du die Namensauflösung machen, oder die
Fritzbox zumindest dabei unterstützen.
Ja schon, wahrscheinlich läuft auf dem Router auch ein DNS-Server, der
die Auflösung von Name -> IP macht, ist der nicht da, dann funktioniert
das auch nicht.
Dirk F schrieb:> Aber die Fritz box ist doch nach wie vor da... ?
Mit DCHP:
µC -> Fritz : Hallo ich bin XYZ, gib mir eine IP
Fritz -> µC : Ok, Nimm 192.168.0.99
<später, über DNS>
PC -> Fritz : Welche IP hat XYZ?
Fritz -> PC : Den kenn ich, der hat die 192.168.0.99
Ohne DHCP:
µC -> niemanden: Haha! Ich bin ABC, aber das ist Geheim!
Und ich klaue mir die IP 192.168.0.88. Das sag ich aber niemandem!
<später, über DNS>
PC -> Fritz : Welche IP hat ABC?
Fritz -> PC : ABC kenn ich nicht.
die Fritz-Box ist natuerlich noch da, aber ihr DNS-Server kennt Dein
Geraet nicht. Wird die IP-Adresse durch den DHCP-Server der Box
vergeben, kennt sie auch den Namen des Geraetes. Bei fest vergebener
Adresse musst Du Name und Adresse in die DNS-Liste eintragen (keine
Ahnung, ob das bei einer Fritz-Box moeglich ist), damit der DNS-Server
Deiner Fritz-Box die Adresse aufloesen kann.
Dirk F schrieb:> Aber die Fritz box ist doch nach wie vor da... ?
Natürlich. Sie weiß allerdings mangels DHCP-Kommunikation rein garnix
von dem Gerät mit der festen IP. Nichtmal, daß es überhaupt existiert.
Das kriegt die Fritzbox bestenfalls per ARP irgendwann mal raus. Wenn es
für sie irgendeine Veranlassung gibt, überhaupt mal im LAN nachzufragen,
ob irgendwer sich für diese IP-Adresse zuständig fühlt. Und dann kriegt
sie nur zwei Sachen raus: 1) Ja, es existiert ein Gerät mit der IP und
2) es hat aktuell dieseundjene MAC-Adresse. Mehr nicht.
Übrigens ist auch bei DHCP-Kommunikation keinesfalls zwingend die Folge,
daß der DHCP-Server (hier also die Fritzbox) den Hostnamen des Client
erfährt (der Client muß den nämlich nicht senden) und noch viel weniger
zwingend muß der DHCP-Server die Antwort irgendeines par se null
vertrauenswürdigen hergelaufenen Hosts zwingend in den Datenstamm seines
DNS-Servers aufnehmen.
Nur die Consumer-Technik für Dummie-Anwender macht das einfach so ohne
jede Rücksicht auf elementare Sicherheitsüberlegungen...
Sprich: Fritzbox und ähnliches Teufelszeug.
Alternativ, wenn der DNS Server der Fritzbos nicht zugänglich ist, ist
es auch möglich, dem PC (jedem wenn es mehrere sind) mitzuteilen, welche
IP zu diesem Namen gehört.
Dazu wird ein Eintrag ins 'hosts' File gemacht.
Bei mir liegt das hosts File auf C:\windows\system32\drivers\etc
Die Datei zb mit Notepad aufmachen. Im File sind Anweisungen wie das
Format eines Eintrags auszusehen hat.
Aber ein Eintrag im DNS Server ist natürlich die bessere Alternative,
weil man eine zentrale Stelle für alle im Netzwerk vorhandenen Geräte
hat.
Dirk F schrieb:> Ich kann die MCU, (z.B. Webserver) über die IP Adresse oder den> host-namen "http://Gerätename/" ansprechen
Also bei meiner Fritzbox ist das Gerätename.fritz.box denn die Fritzbox
erklärt sich kurzerhand im eigenen LAN als Verwalter und oberster
Nameserver dieser TLD.
c-hater schrieb:> Übrigens ist auch bei DHCP-Kommunikation keinesfalls zwingend die Folge,> daß der DHCP-Server (hier also die Fritzbox) den Hostnamen des Client> erfährt (der Client muß den nämlich nicht senden) und noch viel weniger> zwingend muß der DHCP-Server die Antwort irgendeines par se null> vertrauenswürdigen hergelaufenen Hosts zwingend in den Datenstamm seines> DNS-Servers aufnehmen.
Ich stimme zu.
Nur weil ein Netzwerkgerät sich via DHCP eine IP zuweisen lässt, heißt
das noch lange nicht, dass sich dieses Gerät dann auch mit dem Hostnamen
ansprechen lässt.
Der Hostname, der beim DHCP mitgeschickt wird, dient nur als Eintrag in
der DHCP-Liste, damit der Netzwerk-Admin die Adressen leichter zuordnen
kann. Es ist in keinem InternetStandard vorgesehen, mit diesen Namen
Adressen aufzulösen! Man sollte sich NICHT darauf verlassen, das es
funktioniert!
Namensauflösung kann zentral via DNS-Server gemacht werden. Im lokalen
Netzwerk wird aber meistens NetBIOS und seit WinVista LLMNR eingesetzt.
Ich empfehle dir, LLMNR zu verwenden, da es nur ein abgewandeltes
DNS-Protokoll ist. Meinen Sourcecode dafür hatte ich schonmal hier
hochgeladen:
Beitrag "Netzwerkname via MAC-Adresse zuweisen"
Bernd K. schrieb:> Also bei meiner Fritzbox ist das Gerätename.fritz.box denn die Fritzbox> erklärt sich kurzerhand im eigenen LAN als Verwalter und oberster> Nameserver dieser TLD.
Ja. Exakt darüber diskutieren wir hier seit 10 Posts.
Wenn "fritz.box" in der Domänen-Suchliste für die DNS-Auflösung (die
auch per DHCP verteilt wird) gelistet ist, muss man das nicht explizit
dazutippen.