My laptop has the same MAC whether it is connected at home, at work, or in the airport. How would ISPs and the internet backbone routers know where to send the packets to reach me?
Why couldn't MAC addresses be used instead of IPv4|6 for networking?
11–20 of 38 posts
Re: Why couldn't MAC addresses be used instead of IPv4|6 for networking?
#12Routing packets based on MACs would be impossible. That's why. My laptop has the same MAC whether it is connected at home, at work, or in the airport. How would ISPs and the internet backbone routers know where to send the packets to reach me?
You may now proceed to posting solutions to FizzBuzz in Jeff Atwood's blog.
Re: Why couldn't MAC addresses be used instead of IPv4|6 for networking?
#13They already are. Part of the IPv6 address is derived from your MAC. Despite not owning the network for which they are being allocated, IPv4 is a "paying job" to some people. And sometimes an ego boost too, i.e., people who get their kicks from creating "IP address policy". Needless to say this easy "work." Hello ARIN. It's a lot like ICANN. On CircleID someone recently pointed out that IPv6 will make this sort of "j…
> On CircleID someone recently pointed out that IPv6 will make this sort of "job" meaningless.
Er... not sure how that follows. If routing tables aren't going to grow without bound, there's no less need for central allocation authorities than there is with IPv4. The important job isn't rationing, it's keeping allocation as contiguous as possible so the network hardware can keep up.
> Back to your point about MAC's: This is also why the "we're out of IP addresses" meme seems silly. Because we don't see the IEEE complaining they are "running out of MAC's". And IPv6 addresses use MAC's.
Not quite sure what you're getting at here. When people say "we're out of IP addresses", they're talking about IPv4 addresses. That's not silly at all - it's real, it's happening now, and IPv6 still hasn't quite got the penetration to get us out of the hole yet.
The rest of your post would be more useful with some specifics.
Re: Why couldn't MAC addresses be used instead of IPv4|6 for networking?
#14Routing packets based on MACs would be impossible. That's why. My laptop has the same MAC whether it is connected at home, at work, or in the airport. How would ISPs and the internet backbone routers know where to send the packets to reach me?
Thank you for summarizing the answer in the linked article. You may now proceed to posting solutions to FizzBuzz in Jeff Atwood's blog.
Perhaps you should spend your time revising your HN bio instead.
Re: Why couldn't MAC addresses be used instead of IPv4|6 for networking?
#15This book explains how conventions in data networking were established, how words became used as the terms for particular obvious but slightly ambiguous concepts, e.g. 'names' vs 'addresses', bridging vs routing. It also puts IP in to context viz. other LAN protocols before it became dominant. Recommended.
Re: Why couldn't MAC addresses be used instead of IPv4|6 for networking?
#16Routing packets based on MACs would be impossible. That's why. My laptop has the same MAC whether it is connected at home, at work, or in the airport. How would ISPs and the internet backbone routers know where to send the packets to reach me?
IPs mark the end of a cable. MACs mark an equipment.
Equipments can migrate easily (you need updates), "end of cables" less so.
Re: Why couldn't MAC addresses be used instead of IPv4|6 for networking?
#17Re: Why couldn't MAC addresses be used instead of IPv4|6 for networking?
#18Routing packets based on MACs would be impossible. That's why. My laptop has the same MAC whether it is connected at home, at work, or in the airport. How would ISPs and the internet backbone routers know where to send the packets to reach me?
Re: Why couldn't MAC addresses be used instead of IPv4|6 for networking?
#19They already are. Part of the IPv6 address is derived from your MAC. Despite not owning the network for which they are being allocated, IPv4 is a "paying job" to some people. And sometimes an ego boost too, i.e., people who get their kicks from creating "IP address policy". Needless to say this easy "work." Hello ARIN. It's a lot like ICANN. On CircleID someone recently pointed out that IPv6 will make this sort of "j…
No. An IPv6 address can be partially derived from a MAC, but a lot of the time it won't be. For instance, none of the VMs we operate (which all have an IPv6 /64 assigned) have real network hardware, so it makes no sense to generate the IPv6 address from a MAC there. And you can still multihome a single IPv6 address across more than one physical interface, so again, that's not somewhere you'd want to put a MAC into an…
I translate this as: "I don't know how to make a solution. Please tell me how." Which is often followed by "It won't work."
As for VM's, it's true what you say. But at some point if you are connecting to a global network (internet), there is a physical machine that has to connect. And that machine needs an address which cannot be "faked up". Indeed, you some sort of authority to make sure people are not using the same addresses.
Nodes need a way to find each other. Routing tables are simple enough and they work. I will leave that alone.
But people have come up with all sorts of complicated schemes to try to allow nodes to find each other in a decentralized way, namely DHT type stuff and progeny of DHT type thinking.
But who says you have to mess with (replace) the existing infrastructure? Maybe you can just build on top of it. Maybe the exiting infrastructure is a bootstrap. The buzzword is overlay. Old hat, right? Well, almost nothing is truly new. And still, the overlay approaches people know about are often mindlessly complicated. We can do better. Some have done better.
NAT doesn't try to replace the existing framework. It just deals with it.
It isn't pretty, but this is how we are all connecting, in spite of all the IPv4 policy nonsense. NAT solved a problem. (And created a new one, arguably.) Whatever. It works.
There are easy ways for nodes, with crusty old IPv4 addresses, to get through their crusty old NATs and get open UDP ports to communicate with each other. They are not new. And they work. Gamers have been using stuff like this for decades. But there's a lot more utility to being directly connected than just playing games. Enter Skype.
Once that's done, once we're connected directly, we can forget about overblown global routing tables, brittle BGP, DHT and IPv6 dreaming. We can use plain ole Ethernet, we can keep our own small arp and IP routing tables, we can use private address space (or whatever numbers we want - it's our private network) and MAC's. We can run our own DNS. We can keep things simple and secure. Because we can have small private networks. We can manage them ourselves.
The global network was means to an end: finding each other and conecting directly. It was a bootstrap. If it runs on crusty ole IPv4 and depends on NAT and swollen routing tables, so be it. That's not my network. It is just a means to an end.
Personally I never understood the lure of connecting to a "swarm" via some DHT. And this is the thinking that has pervaded peer-to-peer. The concept of connecting to strangers, something like Chatroulette, is not really interesting from my perspective. But a lot of technically capable people think that sort of thing is worth their time.
I want to connect to my friends and family, not random strangers. I want to use the internet for all the things it's been cracked up to be for so long: a replacement for postal mail, telephone, video conferencing, etc. And I do not think I am alone in this view.
It's not a new idea what I'm getting at: breaking things into smaller pieces to manage them. What is the internet after all but a conglomeration of ASN's -- smaller networks.
"BOOTP for the global internet." A way to find each other. And then a way to connect. Opensupernodes. The rest, what you do after connecting, is up to you. That's _your_ network, not Facebook's, Google's, Microsoft/Skype's or anyone else's.
Cooperation, interoperability, (at least ostensible) simplicity. People's comfort with working and playing in small groups. These are the important points in my mind.
Re: Why couldn't MAC addresses be used instead of IPv4|6 for networking?
#20Typically, MAC is assigned by the hardware manufacturer (sometimes you can change/spoof it). IP is typically assigned either by the network administratior or DHCP. If all addresses were based on mac, you could easily intercept the messages from anyone. IP allows a layer of abstraction in which you can group multiple subnets into the same external IP or set up subnets within those subnets even. Another problem is that…
> If all addresses were based on mac, you could easily intercept the messages from anyone. So you encrypt stuff you don't want anyone else to read. Security isn't the concern of the networking layers; it's all done, to the extent it is done, at the application layer. That's the original design, anyway. Edited to add: Well, the original original designs were by people who weren't thinking of security at all. That's wh…
Sometimes true but often not. Encryption can and does happen at various layers of the (OSI) networking stack (Secure Session Layer, Transport Layer Security, Internet Protocol Security).
>That's why telnet and FTP are the way they are.
Those programs are the way they are due to a holdover from the Unix philosophy: do one thing and do it well. Sure, functioning at all was more important than functioning securely. If you ran your connections over a VPN, SSL or IPSec line, the fact that telnet didn't also support encryption would be moot.
The Application layer is for the applications data. If you want to secure the transmission of that data, it shouldn't be up to each and every individual application to support encryption.
This is why things like IPv6 or SPDY/HTTP2 have baked-in encryption below the application layer.