Toon posts:

DHCP FreeBSD krijgt ander IP dan Windows XP

Pagina: 1
Acties:

Verwijderd

Topicstarter
Laatst ben ik tegen iets heel vreemds aangelopen. Ik draai een multiboot systeem FreeBSD 4.5 en Windows XP. De machine is via een 3C905B netwerkkaart verbonden met een kabelmodem. Bij het opstarten wordt (natuurlijk) via DHCP een lease verkregen. Nu komt het rare: als ik FreeBSD opstart, krijg ik een ander IP adres van de DHCP server dan als ik Windows XP opstart. Bij ifconfig (FreeBSD) krijg ik echter wel hetzelfde MAC adres te zien als bij ipconfig (WinXP).

Het liefst wil ik natuurlijk onder elk OS hetzelfde IP adres hebben. Weet iemand een oplossing voor dit probleem?

  • Predator
  • Registratie: Januari 2001
  • Laatst online: 16:57

Predator

Suffers from split brain

Heb je wel ZEKER een vast ip in de dhcp server van je ISP ?
Als dat zo is dan moet je gewoon hetzelfde ip adres krijgen.

Everybody lies | BFD rocks ! | PC-specs


Verwijderd

Topicstarter
De lease tijd is een half uur, als de computer een nacht uit blijft staan, zouden dus de leases verlopen zijn. Als ik dan weer in Windows XP opstart, heb ik weer dezelfde "XP"-lease gekregen, en als ik in FreeBSD daarna opstart, krijg ik ook weer dezelfde "BSD"-lease.

Dingen die ik verder nog geprobeerd heb:
1) in /var/db/dhclient.leases de gegevens van de huidige lease vervangen door die van de "XP"-lease, dhclient killen en opnieuw draaien: "BSD"-lease komt weer terug.
2) in /etc/dhclient.conf de optie toegevoegd dat hij echt het juiste MAC adres stuurt naar de DHCP server, krijg dan nog steeds de "BSD"-lease terug (als ik het MAC adres in deze file verander, krijg ik weer totaal andere IP Adressen)

  • Predator
  • Registratie: Januari 2001
  • Laatst online: 16:57

Predator

Suffers from split brain

Dat je in winXP hetzelfde ip adres terugkrijgt is redelijk normaal. Die houd gewoon zijn laatste verkregen ip bij en probeert dit ip weer te behouden/verkrijgen bij de dhcp server bij bootup.

Waarom je FreeBSD altijd een zelfde ander krijgt is wel merkwaardig. Weet je de maximum lease tijd van de dhcp server ? Misschien staat ie toch nog in de leases van de dhcp server en dan geeft die natuurlijk ook weer zelfde ip aan jouw FreeBSD bak.

Dat lijkt mij de meest logische verklaring.

Everybody lies | BFD rocks ! | PC-specs


Verwijderd

Topicstarter
Voor zover ik weet, koppelt een DHCP server een lease aan een MAC adres. Aangezien Windows XP een lease aanvraagt / verlengt, zou de "XP"-lease bij mijn MAC adres horen. Dus als daarna FreeBSD boot (met afwezigheid van /var/db/dhclient.leases), zou dhclient een nieuw IP adres aan moeten vragen. De DHCP server zou dan eigenlijk de "XP"-lease moeten geven aangezien het MAC adres niet veranderd is.

Volgens mij heeft het dus iets te maken met de manier waarop dhclient een IP adres aanvraagt (misschien dat het client-ID wat hij meestuurt (normaal gesproken het MAC adres), anders is, dan wat Windows XP stuurt).

Verwijderd

Topicstarter
Nog iets wat ik geprobeerd heb: de "BSD"-lease in XP vast gezet (alle gegevens statisch ingevuld). Internetverbinding bleef mooi werken onder XP, en BSD krijgt nog steeds de "BSD"-lease. Daarna heb ik in XP alles weer op automatisch gezet, en nu krijg ik de "BSD"-lease in XP van de DHCP server. Echter toen ik naar FreeBSD ging, kreeg dhclient een totaal ander IP adres. Terug bij af.

Verwijderd

Topicstarter
Ik heb het gevonden.

Ingredienten:
- Ethereal - om packets te sniffen
- ViM
- dhclient.conf
- man dhcp-options
- een hoop geduld

Bereidingswijze:
Eerst het DHCP verkeer in XP opgevangen, daarna het DHCP verkeer in FreeBSD. De DHCPDiscover-packets langs elkaar gelegd: XP stuurt een dhcp-client-identifier mee waarin 'ethernet' en het MAC adres staat, verder stuurt XP ook nog de hostname mee. dhclient.conf editen en toevoegen "send dhcp-client-identifier 01:xx:xx:xx:xx:xx:xx" en op de volgende regel "send host-name "xxxxxxx". Opnieuw IP adres aanvragen: probleem opgelost. *D
Pagina: 1