5 ms·
How did my AirPort Express or do my Sonos do it? Just rewrite the MAC Address? (is that then not technically bridging from terminology pov?)
by amaccuish 5y ago
How did my AirPort Express or do my Sonos do it? Just rewrite the MAC Address? (is that then not technically bridging from terminology pov?)
- eqvinox 5y agoYes, one of the worst hacks in all of home networking is exactly this... rewriting the MAC address. aka "MAC NAT." Alternatively, proxy ARP + proxy ND can also work. The Apple stuff may be able to autonegotiate over some proprietary handshake if it's an Apple AP and Apple Extender. There is also a new standard that covers 4-address frames, 802.11ak; I have no idea how widely that is adopted though — it was only released in 2018[1]. [1] https://standards.ieee.org/news/2018/ieee_802_11ak-2018.html https://standards.ieee.org/news/2018/ieee_802_11ak-2018.html
- amaccuish 5y agoThank you for your expertise! Out of interest, why is it a hack? Does it break things elsewhere? Why is it better to do it at the IP level?
- eqvinox 5y agoNAT, in general, is a hack that requires holding a lot of state in order to squeeze multiple devices into a limited number space. On a technical/complexity level, IP NAT is much worse because you need to hold much more state, i.e. you need the UDP/TCP flow information to rewrite correctly. However, MAC NAT is the pinnacle of stupidity for an entirely different reason: there should be no need for it. MAC addresses only have local significance, and while there are some long-term concerns about them running out, there is absolutely enough of them right now. There should simply be no need to do MAC NAT, if only it wasn't for the shortsighted 802.11 design decision to go with 3 addresses in the header. FWIW, MAC NAT is almost the same thing as a router with ARP/ND proxying turned on, though possibly implemented on a different level. This is the technical reason it's an extremely stupid hack: proxy ND/ARP provides pretty much the same thing, but in a much cleaner way. (The difference is that with proxy ND/ARP, the "router-ish-bridge" assumes ownership of the lower-layer exchanges, i.e. ARP & ND, and just does normal routing with that. MAC NAT, meanwhile, tries to be clever and just forward ARP and ND. Reasons for doing that are ... extremely thin IMHO.)
- dboreham 5y ago> pinnacle of stupidity Thanks for that. Filed away for future use.