@SirDice: formeel heb je gelijk dat de definitie van Local Area Network niets zegt over het medium en de gebruikte protocollen en dus nogal subjectief is. Misschien moet ik voortaan maar de term LAN-segment hanteren...
Overigens is de term "broadcast domain" ook niet duidelijk meer sinds private VLAN's, d.w.z. dat je switchpoorten zo kunt instellen dat een server met een hele reeks clients kan communiceren, terwijl elk van die clients slechts de server "ziet".
Door SirDice: Err, nee. Het source MAC adres is de router, het source IP wordt alleen aangepast indien men NAT gebruikt. Destination MAC is de next hop, destination IP blijft ongewijzigd.
en
Door SirDice: Bedenk dat een broadcast (255.255.255.255 en MAC FF:FF:FF:FF:FF:FF), standaard, niet gerouteerd wordt. Waardoor dit automatisch de grens is van het broadcast domain.
't is een beetje muggeziften, maar geen enkel MAC-adres wordt gerouteerd. Sterker, achter de router kan best een ander medium dan Ethernet gebruikt worden, de next hop heeft dan geen Ethernetadres.
Volgens
http://tools.ietf.org/html/rfc1812 5.3.5.1 mogen "limited broadcasts" (destination = 255.255.255.255) niet worden geforward. De situatie bij subnet broadcast (bijv. 192.168.255.255 die natuurlijk ook met destination MAC adres FF:FF:FF:FF:FF:FF bij de router aankomen) is echter een stuk minder duidelijk....
M.b.t. door routers filteren van pakketten op basis van source adressen:
Door SirDice: Iets wat ik in de praktijk heb gezien. RST pakketjes naar onze webserver port 80, destination IP klopte. Het source IP was echter 127.0.0.1. Werd niet door de router tegengehouden (waarom zou 't).
In
http://tools.ietf.org/html/rfc1812 (en
http://tools.ietf.org/html/rfc2644) staat in 4.2.2.11 dat pakketten met
source IP-adres 0.0.0.0 moeten worden geblokkeerd tenzij de router daar zelf iets mee doet (bootp etc). Ook 255.255.255.255 (aangegeven als {-1, -1}) mag niet als source adres worden gebruikt. Dus zal elke router
iets aan filtering op source adressen moeten kunnen doen. Verder staat in 4.2.2.11 achter (e) dat 127.x.x.x niet op het netwerk voor mag komen, zonder aanduiding of het hier om source of destination adres gaat. Logischerwijs lijkt het me dat routers dus ook pakketten met dit sourceadres zouden moeten blokkeren; immers, waar zou een eventueel antwoord of ICMP foutmelding naar toe moeten?
Interessant is overigens wel dat 5.3.7 dit lijkt af te zwakken, door er SHOULD c.q. SHOULD NOT van te maken:
A router SHOULD NOT forward any packet that has an invalid IP source address or a source address on network 0. A router SHOULD NOT forward, except over a loopback interface, any packet that has a source address on network 127. A router MAY have a switch that allows the network manager to disable these checks. If such a switch is provided, it MUST default to performing the checks.
Van een beetje moderne router mag je toch wel verwachten dat ie dit implementeert?