Sida 3 av 9
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 13:33:39
av sodjan
OK. Det kanske helt enkelt inte finns någon lösning som uppfyller dina krav.
I alla fall inte i ett generellt hemma-nät med de routers och DNS-servers
som normalt finns tillgängliga där.
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 13:50:18
av H.O
Mycket möjligt, men hur kommer det sig då att jag kan nå min Bubba-servers web-gränssnitt genom
http://bubba och inte enbart IP-adress (internt nu, inte utifrån)?
Dess IP-adress är ju enbart unik på mitt sub-nät så det kan väl knappast vara någon extern DNS-server som håller reda på den? Jag kollade i HOST-filen och där fanns inget beträffande den IP-adressen. Så nånting på nätverket vet att namnet
bubba tillhör den IP-adressen, det måste vara routern och det hela har konfigurerat sig helt automatiskt (ingen handpåläggning), jag har bara pluggat i sladdarna.
Tack igen, jag plöjer ny mark här...märks det?

Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 13:51:29
av TomasL
Ok.
Då så.
Du behöver en server som kör förslagsvis
BIND (DNS Server)
DHCPd (dhcp server)
Du måste konfigurera BIND för en lokal zon och tillåta DDNS för denna zon.
Du måste konfigurera DHCPd för DDNS av den lokala zonen.
Detta innebär bl.a. generera lösenord, editera diverse filer för dessa servrar osv.
Noggrannare beskrivning hittar du här
http://www.semicomplete.com/articles/dy ... with-dhcp/
Därefter måste du skriva en komplett DHCP klient för din PIC, eller om stacken ligger i en separat processor för denna.
Du måste ha möjlighet att ange hostnamnet i din PIC, typ, via knappsats/display eller rs232 (du kan ju naturligtvis hårdkoda namnet också)
Ditt exempel om kompisen faller platt, eftersom han inte vet hur han skall sätta upp BIND och DHCPd och troligen ej heller har en linux/Win2kX server stående.
Jag förstår fullt ut att det är roligt att lära sig nya saker, men om man tittar på den praktiska biten, så är nog hostfilen fortfarande alternativet.
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 13:52:45
av Icecap
Jag har några datorer i mitt nätverk men ingen av dom "registrerar sig" i nätverket! De har namn som routern kan fråga om och som andra datorer kan söka efter, exakt hur det sker är jag osäker på men med tanke på tiden det tar att leta igenom nätverket skulle jag tro att datorn som söker skickar ut en namnförfrågan till var och en av de lokala IP-adresser.
Alltså ska din mojäng svara med ett namn på förfrågningar på LAN'et, då kan du söka på det namn via de andra datorer.
Lite sent svar men postar ändå.
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 13:58:07
av labmaster
Jag har en W5100 ethernet-controler ...
Hej H.O!
En ethernet-controler lyssnar inte till IP-adresser, den lyssnar bara på MAC-adresser. Jag vet inget om W5100 men jag gissar att den innehåller en IP-stack. Det vill säga en programvara som implementerar IP, TCP och UDP i olika skikt.
För att du skall kunna använda namn istället för IP-adress behöver du inte göra något i din W5100. Det du skall göra är att lära alla datorer på nätet hur namnet du önskar använda skall översättas till en IP-adress. Såsom flera redan skrivit så kan denna översättning göras på två ställen. Antigen i en DNS-server eller lokalt i den dator som skall kommunicera med din W5100.
Om din router innehåller en DNS-server skall det finnas en tabell med statiska IP-adresser där du lägger in namn och IP-adressen till din W5100. Har du ingen DNS i routern eller inte kommer på hur man lägger data i tabellen kan du lägga in namn och IP-adress i host-tabellen på respektive dator. Det är lmhosts på windows och /etc/hosts för Unix/Linux baserade datorer.
En sak till, det kan vara så att W5100 annonserar sitt namn och IP-adress till routern där det går en DNS-server genom att den broadcastar ut detta på en specifik port som jag inte minns numret på just nu. Då behöver du inte göra något mera än att skriva namnet i webläsaren på den dator du använder. Observera att du kanske måste ange en domänadress efter namnet. Du kan kolla om namnet finns i DNS-serverns namnlista. Hur du gör detta finns specificerat i manualen för routern. Alternativt använder du programmet dig på ett Linux/Unix system, nslookup kan också användas.
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 14:04:10
av TomasL
Förmodligen är dnsmasq installerat på din router eller nått annat.
Dock svårt att veta då vi inte vet hur din nätverkssetup funkar.
Troligen kan man ersätta kombinationen BIND/DHCPd med dnsmasq i vissa fall.
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 14:11:09
av sodjan
Får Bubba servern sin IP adress via DHCP på ditt lokala nät ?
Dert är mycket möjligt att routern lägger till de lokala hostar som
begär en adress via DCHP i sin dynamiska DNS tabell automatiskt.
Jag har för mig att en del kombinerade DHCP/DNS burkar gör så.
D.v.s med det namn som hosten själv anger vid själva DHCP-anropet.
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 14:31:47
av blueint
Konfigurera upp en unix DNS med DDNS och
DHCPd. Skriv en klient på pc-datorn som gör den funktion du vill ha på mikrokontrollern. Testa "routrar" tills du hittar en som stödjer det denna konfiguration. Därefter kan du implementera det hela på mikrokontrollern.
(Edit) Alternativ:
SSDP/uPnP och
ZeroConf.
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 14:35:04
av H.O
ThomasL,
Ha, där fick jag lite att bita i

Men allvarligt, det finns ju redan något på mitt nätverk som har koll på namnet på min lilla
bubba-server (fast jag har v1). Den var som sagt bara att plugga i, starta upp och browsa till
http://bubba Jag har inte installerat eller konfigurerat nånting, inte angett några IP-adresser eller lösenord eller nått annat manuellt. Och jag har bytt router en gång men det var återigne bara att stoppa i sladden, inget editerande, ingen "handpåläggning". Och mig veterligen kör inte DEN någon DNS server - men där kan jag ha fel.
Icecap,
Jag är inte säker på att söka efter ett datornamn via utforskaren är samma sak som att via web-läsaren browsa till en web-server via namn istället för IP-adress?
labmaster,
Rikitigt, W5100 innehåller TCP/IP stack med 4 sockets som var och stödjer kommuikation över TCP, UDP, ICMP, IPv4, ARP, IGMP, PPPoE (taget från databladet).
En sak till, det kan vara så att W5100 annonserar sitt namn och IP-adress till routern där det går en DNS-server genom att den broadcastar ut detta på en specifik port som jag inte minns numret på just nu. Då behöver du inte göra något mera än att skriva namnet i webläsaren på den dator du använder.
Det gör den inte men det är exakt
det jag vill åstadkomma. För närvarande svarar den på ping och jag kan browsa till den genom dess IP-nummer varpå den serverar mig den lilla web-sidan jag lagrat i PIC'en.
sodjan,
Japp, bubba-servern får sin IP-adress via DHCP så SÅ kan det mycket väl vara.
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 14:47:48
av labmaster

Vad i hela friden var det du frågade efter egentligen? Du har nu berättat att den får sin IP-adress via DHCP och namnet som presenteras i DNS är bubba. Vad vill du åstadkomma egentligen?
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 14:55:27
av H.O
Nej labmaster, du får läsa tidigare inlägg igen....
Jag har förklarat att min
server får sin IP-adress via DHCP och att
dess web-gränssnitt är accessbart från web-läsaren via IP-adress och namn (
http://bubba) utan att jag gjort
nånting manuellt. Det jag vill åstadkomma är
samma sak fast med mitt PIC/W5100-kort - utan att editera HOST-filer eller "rota i routern".
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 15:00:19
av sodjan
Japp, och då måste ditt "PIC/W5100-kort" göra samma sak som Bubba servern !
D.v.s dels köra DHCP, dels göra samma saker i DHCP anropet (jag vet inte
om själva DNS registreringen är något som DHCP/DNS servern avgör
självständigt eller om det är en "option" i DHCP anropet...).
Jag fattade det som att ditt "PIC/W5100-kort" kör med fast adress (orkar
inte bläddra tillbaka och kolla), och då fungerar det inte, så klart.
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 15:08:03
av grottan
Gör så här, ladda ned Wireshark och sniffa uppstarten av din Bubba och spara resultatet till en pcap fil så får vi se vad som händer
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 15:11:03
av sodjan
Bara nyfiken (och har funderat på det förrut)...
Hur gör man med Wireshark och ett enbart switchat nät om det
inte är samma maskin som Wireshark körs på som ska loggas ?
Behöver man koppla in en hub ? Hur "sniffar" man annars ?
Finessen med en switch är väl bl.a att trafiken bara syns på
de berörda nodernas/hosternas anslutningar !?
Re: Få en "ethernet-enhet" att lyssna till namn och IP-adres
Postat: 6 juni 2011, 15:12:48
av labmaster
Aha, svenskan var lite otydlig i ditt första inlägg så jag uppfattade inte riktigt vad du menade, men nu förstår jag. Du vill alltså att din W5100 skall hämta sin IP-adress med hjälp av DHCP. Om detta redan finns implementerat i W5100 så är det inte så mycket jobb. I annat fall måste du implementera DHCP och det är lite mera komplicerat.
Enklaste lösningen om det inte finns stöd för DHCP i W5100 är att hårdkoda IP-adressen och reservera denna adress i DHCP-servern som jag förmodar är din router. I samma veva lägger du in rubricerad IP-adress i routerns/DNS-serverns "name table" (namnuppslagningstabell) och anger där ett lämpligt namn som du själv väljer. Denna operation innebär att du kan adressera W5100 med namn från vilken dator som helst på ditt lokala nätverk givet att datorerna har pekat ut routern som nameserver (DNS) vilket brukar ske automatiskt om datorerna får sin IP-adress via DHCP från routern.
Är detta svaret på din fråga?
By the way, jag har löst det på ovanstående sätt för en liten enhet med IP-stack på mitt lokala nätverk här hemma. Enheten saknar stöd för DHCP.