Legio schreef op maandag 13 februari 2006 @ 17:16:
Nu zie ik het nut van IP-adressen wel in. Nog een extra vraagje over de werking ervan, dit komt nogal tegenstrijdig over als ik hier voorgaande posts lees.
Een pc zou een interne routeringstabel hebben met alle deelnemers van het netwerk erin. Maar hoe weet een PC nu wie er allemaal op het netwerk aangesloten is? Bij grote netwerken doet een pc toch geen volledige scan telkens als hij opstart? Zo een tabel zou het nut van ARP pakketten toch teniet doen?
Een router zou een bepaalde request direct naar het juiste netwerk sturen (met behulp van de IP-domain nummers). Maar als er nu een router is die 2 netwerken aan elkaar linkt (Net1 en Net2). En aan Net2 hangen nog ergens 40 routers die Net2 met andere netwerken verbinden (dus niet 1 gateway, maar meerdere, of kan dit niet?). Hoe weet die router dan langs waar het pakket gezonden moet worden? Er moeten toch op een of andere manier eens broadcasts verzonden worden tot bij het doel?
een pc heeft geen routeringstabel van alle deelnemers, versimpeld maar 2...
0.0.0.0 naar default gateway (alles naar je gateway)
192.168.1.x mask 255.255.255.0 naar je eigen interface (het subnet waar je inzit is "directly connected")
op het moment dat je naar een host in je eigen subnet iets wil sturen zal je met arp het mac address achterhalen van die machine. dus translatie ip naar mac. mac address wordt dan gebruikt voor de fysieke verzending van het pakketje.
op het moment dat je connect naar een host buiten je eigen netwerk, resolve je met arp niet het mac adres van die host, maar van je default gateway. je stuur een pakketje naar het mac adres van je default gateway, en je gateway stuurt dit weer door naar het mac adres van de volgende router, net zolang totdat je aangekomen bent in het subnet waar de host staat. Pas dan zal de router, die in dat segment staat met arp het mac adres van die host ophalen.
dus source/dest mac adressen veranderen met elke hop in de header van een pakketje, maar het source en dest ip niet...
en verwar arp (mac-ip translatie) ook niet met nameresolving (dns/wins/netbios; oftewel naam-ip translatie)