Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: tip release dhcp  (gelezen 3442 keer)

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
tip release dhcp
« Gepost op: 2009/07/02, 01:00:30 »
Tip nummer 1 op de Wiki pagina tips en trucs gaat over dhcp.
Met alle respect: Volgens mij werkt het dhcp protocol niet zoals beschreven.

Indien u nu eerst via Windows op het internet gaat en daarna herstart in Linux, dan krijgt u in vele gevallen geen IP-adres van de DHCP-server. Deze server herinnert zich namelijk dat hij reeds eerder een IP-adres voor dat MAC-adres had gegeven, en geeft daarom geen nieuw.

Een DHCP-server herinnert zich inderdaad het adres wat gekoppeld is aan het MAC-adres (Ubuntu server: /var/lib/dhcp3/dhcpd.leases). Maar als er opnieuw een dhcp verzoek gedaan wordt van hetzelfde MAC-adres zal er weer een nummer worden gegeven.
Als behalve het MAC-adres ook andere attributen hetzelfde zijn, zal (in ieder geval binnen de maximale lease tijd van standaard 2 uur) hetzelfde ip-adres worden gegeven en anders een ander adres. Eventueel een nieuw adres, mits er nog adressen beschikbaar zijn.

Volgens de letterlijke tekst van de theorie van deze tip zou een herstart in Windows ook niet werken. Ook dan kent de dhcp server het MAC-adres al.

Is hier sprake van een actueel probleem? Kan de tekst gewijzigd worden? Het is ook geen Ubuntu of linux probleem maar een probleem met van de dhcp-server. Of kan de tip gewoon gewist worden (of moet ik nog wat 'huiswerk' doen?).
Klik links bovenin op Documentatie

Offline Johan van Dijk

  • Administrator
    • johanvandijk
Re: tip release dhcp
« Reactie #1 Gepost op: 2009/07/02, 01:57:51 »
Het is een vreemde situatie, maar een korte zoektocht op internet levert wel een aantal sites op met dezelfde tip.
Bijv: http://ubuntuforums.org/showthread.php?t=170851 en http://handboek.linuxbelgium.be/kabelmodem.html

Meer leeswerk: http://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol
En: http://tools.ietf.org/html/rfc2131

Ik gok dat het te maken heeft met een unieke client-identificatie die meegestuurd wordt in het DHCP-verzoek.
Die wordt mogelijk onthouden door de server, die bij een nieuw verzoek door de Ubuntu-client merkt dat er al een client met die identificatie op het netwerk zou zitten. In dit geval is dat dus Windows, die niet meer draait.
Een release zou die identificatie weer vrijgeven, zodat Ubuntu die kan gebruiken.

Mogelijk is een release dus niet eens nodig, maar dan zal je in Ubuntu wat instellingen aan moeten passen in /etc/dhcp3/dhclient.conf

stukje van man dhcp-options:
       option dhcp-client-identifier string;

          This  option  can be used to specify a DHCP client identifier in a host declaration, so that dhcpd can find the host record
          by matching against the client identifier.

          Please be aware that some DHCP clients, when configured with client identifiers that are ASCII text, will prepend a zero to
          the ASCII text.   So you may need to write:

               option dhcp-client-identifier "\0foo";

          rather than:

               option dhcp-client-identifier "foo";

Maar goed: dit is giswerk van mijn kant. Misschien dat iemand met meer netwerkkennis iets nuttigs kan zeggen over dit onderwerp :P

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
Re: tip release dhcp
« Reactie #2 Gepost op: 2009/07/02, 09:41:25 »
Johan, bedankt voor het meedenken. Wat is lees spelen deze problemen bij bepaalde internet-providers die hun dhcp server strak hebben ingesteld. Ik lees dat dit mogelijk bij (usb) kabelmodems van telenet in Belgie speelt of speelde.
Ik ben nieuwsgierig of er telenet gebruikers zijn die kunnen bevestigen dat telenet nog steeds deze dhcp instelling heeft.

Het gros van de Nederlandse gebruikers zal tegenwoordig gebruik maken van een zelfstandig internetmodem/router en daar speelt dit probleem niet. De tekst "in vele gevallen" zal in ieder geval gewijzigd kunnen worden in "in bepaalde gevallen". Hopelijk kunnen we dit nog verder uitwerken tot specifiek welke gevallen.

Ook het gebruiken van dezelfde 'client identifier' zoals je citeert uit de man page kan er ook voor zorgen dat de dhcp server wel hetzelfde adres hergebruikt. Vooropgesteld dat dit probleem nog actueel is, is dit wellicht een beter oplossing.

Want bij de tekst in de tip "Linux geeft standaard wel het IP-adres vrij" gaan we er wel vanuit dat het linux systeem netjes worden afgesloten. Bij gebruik van dezelfde 'client identifier' zal dat niet uitmaken.
Klik links bovenin op Documentatie

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
Re: tip release dhcp
« Reactie #3 Gepost op: 2009/07/09, 14:25:11 »
Uit man dhclient:
       The client normally doesn’t release the current  lease  as  it  is  not
       required  by  the DHCP protocol.  Some cable ISPs require their clients
       to notify the server if they wish to release an  assigned  IP  address.
       The  -r  flag explicitly releases the current lease, and once the lease
       has been released, the client exits.
In ieder geval kan de tekst "Linux geeft standaard wel het IP-adres vrij. " worden gewist.
Ook lijkt het probleem beperkt tot "sommige" kabel providers.
Klik links bovenin op Documentatie

Offline testcees

  • Documentatieteam
    • testcees
    • www.testcees.nl
Re: tip release dhcp
« Reactie #4 Gepost op: 2009/07/09, 14:41:33 »
Aanvullend is de tekst "Dus herstarten vanuit Linux naar Windows geeft geen problemen." een mysterie.

Uitgaande van de man page geeft linux de dhcp lease ook niet vrij en moet hetzelfde probleem spelen (bij "sommige" kabel providers) bij een herstart vanuit Linux naar Windows. Waarom gaat die herstart dan juist wel goed?
Helaas heb ik geen internet via zo'n kabel provider en kan ik dit niet uittesten.
Klik links bovenin op Documentatie