
A New Approach to IP Address Exhaustion 191
akkem writes "For a while now, we've been running out of IPv4 address space, resulting in more and more computers getting put behind NAT devices. That's fine for many computers, but what if you want that computer to be available as a server? As part of his PhD work, my friend Eugene has come up with a nifty solution, AVES, which enables any computer on the Internet to reach one or more servers placed behind a NAT. His approach is to give each server a unique name (via DNS), and to handle all the IP address translation automatically via an overlay network." This looks somewhat similiar to virtual DNS, but taking it another step, and having the server route the requests behind itself instead of just handling it a little differently.
Just map ports on NAT to servers on private LAN. (Score:1)
Re:Long-term solution...? (Score:1)
Cut-n-paste still good for a few quick&cheap karma points, it seems?
Re:IPv6, IPv4 and other quirkifications (Score:1)
AVES: interesting, but useless (Score:1)
You have to have N AVES "waypoints" to access N internal machines using a single NAT gateway.
The total bandwidth available to AVES "waypoints" has to be at least bandwidth used by all Z AVES-NAT gateways (which is the sum of the bandwidth usage of all their AVES-NAT'd internal machines). This is a lot of bandwidth.
And regardless of theoretical bandwith comparisons, this will never work for significant amounts of bandwidth. Anyone who has experimented with any kind of tunnelling has probably noticed that the internet sucks.
Peering points suck. Bandwidth sucks unless you pay tons of money and have dedicated fiber, and even then peering points still suck.
So what you really need is N AVES "waypoints" for each AVES-NAT gateway that are close to the direct path between A and B. Unfortunately this is pretty impractical even given massive amounts of money to deploy these things.
And as 8 billion people have already pointed out, AVES makes it impossible to do any real packet filtering by essentially anonymizing the incoming connections, unless you're [un]lucky enough to be running linux 2.4 and want to write a netfilter plugin that gets the real remote ip from the AVES-NAT daemon. As if filtering didn't chew up enough CPU already.
I really want to know why people are coming up with schemes like this that don't scale at all. Don't they have better things to do with their time?
DO SOMETHING USEFUL. PROMOTE IPV6 (And learn more about it too, ipv4->ipv6 migration has been thoroughly addressed, no pun intended)
Re:Neat idea, but it's asymmetric routing (Score:2)
In the paper [cmu.edu], the researchers mention that that can cause problems with ingress filtering by ISPs, which can be fixed by forwarding the return traffic through the waypoint as well.
Read one of their papers.
Re:Goody (Score:2)
Good idea (Score:3)
Maybe we should propose IP Address Naps.
IPv6 (Score:1)
Combined with the fact that router manufacturers should have a much stabler IPv6 base by then and critical mass of IP wireless devices should be arriving about then, expect to see a sudden surge in IPv6 connectivity and demand. You heard it here first!
Re:Want this to be a standard? (Score:1)
I just downloaded cyrus-imap-2.0.12 and cyrus-sasl-1.5.24. Neither license says that. In fact, no file in the cyrus-sasl archive even contains the string "commercial".
Where exactly did you get that quote from? My guess is that you just pulled it out of your butt.
Re:Want this to be a standard? (Score:1)
I see.
Re:Want this to be a standard? (Score:2)
Funny, when I worked there my lab released a big chunk of code under a BSD license, and the Cyrus IMAP server and Cyrus SASL library both appear to be released under a BSD license.
Also, you do realize that this project is still in the experimental phase, right? Academic research doesn't have the same release model as open source software -- the goals and constraints are very different. In the open source world, someone else grabbing your code and running with it is great; you've contributed to the community, and people are doing useful things. In the academic research world, that can easily mean that someone else publishes before you do, and you've just spent a lot of time and funding with nothing to show for it. Oops.
The same goes for the IETF comment -- taking things to the IETF too early is a waste of everybody's time. It's better to try something out and see if it works before trying to standardize it. Not everything is best hashed out completely in committees and over mailing lists.
I would suggest that you give this project time to develop before trashing it for not being finished the way you'd like it to be, but I do realize that doing so would violate the Slashdot 'gimme gimme, I want it MY way!' ethic.
Re:Again! (Score:1)
now, holly hunter - there's a babe! plus she's from conyers, georgia!
Re:Goody (Score:1)
Re:ip6 (Score:1)
Re:OK, don't panic (Score:1)
Re:OK, don't panic (Score:1)
So in the future please refrain from getting snooty on people and referring to them as MCSEs without cause.
OK, don't panic (Score:5)
Here are some stats from ARIN (unfortunatelly these are circa 1996...):
Right... so there are 127 institutions with class A's all to themselves. Now that's really efficient. Even a full class B (which 10000 organizations have been blessed with) is overkill.
Now, the offenders are here [isi.edu] (this list _is_ up-to-date). Most notable class A assignments:
The rest goes to IP registries to dish out in comparatively puny class B and C chunks, and of course the US government.
Re:lets start right now! (Score:1)
---
The big myth (Score:1)
--
Joe Hamelin
Re:IPv6, IPv4 and other quirkifications (Score:2)
Obtaining a multicast tunnel, these days, is an impossibility inside an absurdity. Try asking for a tunnel on the MBone mailing list, some time. If you're lucky, you'll only be talked down to, as if a small child.
(Personally, I know children who can out-program pseudo-intellectuals any day. A degree and a job in an ivory tower doesn't make you smarter or better. It just gives you a better view of the ground, when the foundations collapse.)
Re:IPv6, IPv4 and other quirkifications (Score:2)
Re:IPv6, IPv4 and other quirkifications (Score:2)
(That assumes, though, that ISPs have an interest in providing a service, rather than simply making a quick buck.)
Re:lets start right now! (Score:2)
(Pointers to them are on: http://www.6bone.net)
IPv6 and IPv4 can run concurrently, but unless you have some kind of translation layer, you can't simply connect to an IPv4 machine through IPv6. It isn't backwards-compatiable.
IPv6, IPv4 and other quirkifications (Score:3)
So why is it not being used? Easy. Same reason multicasting isn't used. None of the ISPs want to upgrade first. They want someone else to take the fall, if there's a problem. The whole bit about demand is politik-speak for "we're not telling anyone what we -could- be selling them, cos customers in the dark are so much easier to sponge off."
So, how to get round these neanderthals? Again, easy. Proxy servers. What you need is not NAT as it is currently used, but rather IPv4IPv6 NAT. Then, end-nodes can use IPv6, whether the ISPs ever do or not.
This is the reverse of the dismally failing attempt to push multicasting, by concentrating on the backbone. The backbone doesn't matter! It's what the user can do - and KNOWS they can do - that counts. Everything else is fluff.
If NAT boxes and NAT solutions worked by mapping IPv4 to IPv6, you can be damn sure that Microsoft's IPv6 stack would be stable and on people's desks in a week, with AOL following a few days after.
Why? When it's taken YEARS just to persuade a few hundred sites to even experiment with the protocol? Because image is everything. Mess up your image, and you're dead in the water.
(This goes back to why ISPs are about as likely to try new things as a vulture is to go vegetarian.)
Re:connect(aton(AF_INET, ip_address)) (Score:1)
Re:connect(aton(AF_INET, ip_address)) (Score:1)
Re:OK, don't panic (Score:2)
use the RT resource record (Score:2)
Re:IPv6, IPv4 and other quirkifications (Score:2)
Actually, it is not (UUNET will gladly give you a DVMRP tunnel for a few hundred a month, if you're a customer). And there are reasons why you might want to do a DVMRP tunnel rather than MBGP.
Of course, you do want to run PIM-SM within your network.
This is not only a kludge but badly designed (Score:1)
connect(aton(AF_INET, ip_address)) (Score:2)
Then game publishers should put out a patch to change the IP address inputs to a textbox input, require names to connect, and be done with it. The code to use a name instead of an IP address is about 5 lines longer and adds about half a second to execution times in bad DNS traffic conditions. Besides, if any number of names could map to a single IP address, then no company would have cause to prevent you from requesting TBONE.MYISP.COM on your account when you dialed in. In fact, you could have your own internal IP address in your provider, assuming every provider used the Class A private network for their internals.
Re:IP6 is still a long way away (Score:2)
GPRS is an easy upgrade for GSM networks and US TDMA (IS-36, i.e. digital cellular other than CDMA) networks. It includes a tunnelling protocol that allows the tunnelled address of the phone to be IPv4 or IPv6. And in the 3G world, IPv6 is part of the standards from the beginning.
Re:Neat idea, but it's asymmetric routing (Score:2)
This really does illustrate how successive kludges on top of IPv4 (NAT, AVES, etc) will make it essential to migrate to IPv6...
Are you Jon Katz? (Score:1)
Re:New Approach? (Score:2)
Re:Just map ports on NAT to servers on private LAN (Score:1)
Re:This has been done before... (Score:2)
Re:this is how we create messes (Score:2)
Re:this is how we create messes (Score:2)
Re:What about splitting up some of the old class A (Score:1)
Re:Creative use of IP addys (Score:1)
Re:NAT and Security (Score:2)
NAT and Security (Score:3)
What happens if someone forges a AVES DNS entry to point to an internel IP, and then uses the AVES protocal hooks on the NAT to actually drive through the NAT and hit that machine?
I don't see this shipping in the default "on" position anytime soon in the future, but a neat way around IP connectivity issues behind a NAT.
Re:Creative use of IP addys (Score:1)
Re:OK, don't panic (Score:1)
There are way too many network engineers out there that don't understand the class structure, and how it effects summarization. Making a blanket statment that this is history, and no longer needed, is pure rubbish.
--knick
To clear up your misconceptions. (Score:2)
BTW.. they aren't 'fake' IPs, they are 'reserved' IPs.
And http is one of the ONLY protocols that includes the domain being looked up in it's own protocol.
In short, we have something that came about via an oversight in the original design of the protocol (that 32 bits would be enough address space), and now people like you are complacent about the hacks we use to get around it?
What we need is IPv6, deployed properly. And it's going to happen.
Re:For crying out loud! (Score:2)
A kludgy solution like outlined above might just be a nice solution for many small companies and home users. I'd hate to get a more expensive account from my isp just for the additional IPv4 nrs when stuff this would solve my problem just fine.
Re:For crying out loud! (Score:2)
Sorry, I really should preview,
Jilles
For those that did not understand why.. (Score:2)
However, the adoption of IPv6 is dependent on several other parties, over which you personally may have no control whatsoever.
This solution could be deployed today, without having to wait for all parties to adopt IPv6, something which may actually never happen.. a different protocol may be used at the time that people actually convert.
Re:wait, can't port forwarding already do this? (Score:2)
Re:OK, don't panic (Score:2)
I feel cool; I've worked for BBN and Eli Lilly and Company, so I've been involved with 4 class A networks.
Eli Lilly and Company is a large pharmaceutical firm who has had an Internet connection since the late 80s, long before most non-technology companies of similar size.
As I understand the history from someone who should have known, Eli Lilly originally applied for a class B address space back in the late 80s/early 90s, but Jon Postel himself suggested that they ask for a class A instead.
Postel later criticized Lilly (among others) for not returning the extra addresses.
It should be pointed out that renumbering 40,000+ computers is a non-trivial task, and handing back portions of the address space would likely cause other headaches. To be honest, I'm not certain anyone has actually formally asked Lilly to turn the space over.
Sounds interesting, but... (Score:2)
Because one is using DNS as the map to the NAT'd server, the server must actually receive the DNS address as part of the request. HTTP is the only common "over the internet" internet protocol that has this functionality.
I am not too afraid of the IP shortage much in the short term anyway. ICANN and the IP sub-orgs have handled the translation to more effective IP blocks very well, and since people have to pay for them now, it is unlikely that the will be used frivilously. Plus, the internet, despite its massive growth in user nodes will eventually crest I think soon enough to eliviate heavy strains.
etc...
By taking a position of superiority you show how nearsighted you are. Thus Spake ADRA
Re:Want this to be a standard? (Score:2)
It would be nice to have the DNS protocol changed a little bit so that forwarded requests contain the address of the original requestor. But that's a completely orthogonal issue and other people (e.g., Akamai) want that too.
Same idea, cooler projects: (Score:3)
Robert Morris has a group working on overlay networks as an alternative to basic Internet path selection --- RON [mit.edu]. They are concentrating on overlays as a means of allowing intelligent or policy-based routing decisions on a small scale effect decisions on the large-scale Internet.
Of course, multicast is only going to happen via overlay networks. There are many groups building scaleable overlay networks for content and data delivery today. I'd go so far as to say that multicast semantics are going to drive adoption for routed overlay technology, which will then be used to bridge NAT domains later on.
A valid question to ask in response to this article, though, is "what address exhaustion"? Does anyone have real, valid numbers + methodology for address depletion on the post-NAT Internet?
Re:IP6 is still a long way away (Score:3)
Unfortunately for Cisco, ISPs don't particularly want to deploy IPv6. It doesn't make them more money. Gadget internetworking (http://www.yourwaffleiron.com) hasn't happened yet, and when it does, there's no reason why it can't be made to fit into the 32 bit space we already use. Security has already been addressed by opportunistic IKE/ISAKMP/IPSEC, SSL, and SSH.
In a network that already aggressively uses NAT, private addressing, and overlays, what does extra address space really buy us?
Nonscaleable routing table growth!
Personally, as a low-level network application developer, I'm in no hurry to see IPv6 deployment. I generally have a problem with the way infrastructure developers have pushed more and more problems into the core of the network. This is contrary to the end-to-end argument that the Internet is based on. The more we do in applications, the more flexibility we gain.
The fact that you can't run "Icecast" servers has nothing to do with addressing. Streaming audio distribution over the Internet is a debacle right now. What you're really asking for is multicast, and that's coming around the bend (only riding ON TOP OF IP, not inside of it!). When widespread overlay multicast occurs, you'll have access to an efficient distribution channel without the need to run a "server" that people "connect to" to get audio.
And how on earth do you overlook dynamic DNS in all of this? If the problem is resource location, what is an IP address buying you? DNS already provides enough information to resolve rendesvouz problems. If you are stuck behind NAT, relay/rendesvouz architectures already exist to turn your "clientside" connection into a server feed.
I think this desire to deploy IPv6 is just knee-jerk religious bigotry from people who don't understand the problem.
Do we really need more bandaid solutions? (Score:2)
(Not meant as a flame, but as an honest question.)
Re:Just map ports on NAT to servers on private LAN (Score:2)
-Michael
Re:Nice, but useless? (Score:2)
Can you assign an IPv6 address to a cable-internet modem/gateway and play everquest today?
Thank you.
-Michael
Re:NAT and Security (Score:2)
Theoretically, this is easy to defend against.. You simply provide private-key authentication between the NAT server and the AVES router. Yes it can be implemented poorly (especially with proprietary closed-eyes windows drivers).
Additionally, I would assume that the NAT is client-side configured to explicitly allow ports and machines. Thus quake, web and email ports would be all that could be hit. Faking the router (as I assume you're talking about), wouldn't be able to bypass anything; with the possible exeption of DOS attacks.
-Michael
Creative use of IP addys (Score:2)
I don't know what all the fuss is about.
Local networks can use fake IPs (just use a range of IPs that are reserved for local networks; I'm not sure what they are off the top of my head, though...)
-Egon
Re:I've been considering this also (Score:2)
Actually I think that NAT is quite a nice solution for most of the problems of non-routable IP addresses (even servers can be handled with a bit of tinkering at the gateway.)
IIRC IPv4 has had client routed protocol packets for forever though. I don't get why you couldn't just add a loose-route optional protocol header to the IP packet to route traffic past gateways rather than add layers upon layers to the IP stack (which invariably seems to result in protocol stack inversion.)
Re:I've been considering this also (Score:2)
After spouting off this morning about how simple it should be to do the same thing with core IP, I did eventually go back and reread RFC 760 & 761. And I agree that it wouldn't be nearly as simple as I thought to use client packet routing.
Among other things it looks like client routed IP packets were never completely specified. The packet route is destroyed as the packet is being routed (each hop specified in the route gets pulled off when as the gateway is reached, and the only way of building a reverse route is by setting the packet tracing option which would require knowing in advance how many hops the packet will go through.
In addition there doesn't seem to be any supported way (at least in Linux) of using that packet as the basis for a response. Instead the user-mode program manually copies the sockaddr_in from source to destination, and that structure only uses the basic IP address.
Ick!
Want this to be a standard? (Score:2)
NATs violate the concept of direct connections to the internet that a large part of the IETF want to see. (Strike 1)
Where is the source code? What is the license terms? (given CMU's lack of willingness to use BSD style license....Strike 2)
Two strikes as to why the IETF would look at this and click their tounges. If they are uynwilling to submit this to the IETF and go through the process, this is nothing more than an acedemic excersize, and can be safly ignored.
Re:IP6 is still a long way away (Score:2)
We are not suffering from IPv4 exhaustion (Score:3)
Stanford recently did the right thing, and gave back an entire Class A netblock [nwfusion.com], renumbering into the remaining Class B blocks they retained (36.0.0.0/8 was the block they returned to ARIN, in case you're wondering).
Other [merit.edu] parties [mit.edu] mentioned in that NWFusion article seem to think they have a God-given right to hoard address space they will never use.
According to the NWFusion article, it is estimated that only 69 million IP addresses are actually in use, out of the 160 million to 1 billion that are practicably useable given the limitations of IPv4 routing protocols.
Goody (Score:5)
Re:OK, don't panic (Score:2)
There are 126 class A's address spaces (1-126) (0 is used for localnet, and 127 is used for loopback). 10 is reserved for private address space by RFC1918, so that's 125 left.
Currently, ARIN has 67-79 listed in RESERVED-7, 82-95 listed in RESERVED-11, and 96-126 listed in RESERVED-8. The list you gave additionally has 1, 2, 5, 7, 23, 27, 31, 36, 37, 41, 42, 49, 50, and 59-60 (and those still appear to be in the same state). That's a total of 72 unused class A's that aren't even assigned to a registry representing 28% of the address space.
219-223 are also unused (RESERVED-5), as are 240-254 (although they don't appear in ARIN's DB), for another 8%.. APNIC hasn't really begun to use 218. ARIN is currently doling out 63-66. 197 and 201 don't seem to be used.
Additionally, there are 15 class A's that are assigned but not used (publically routed):
There's quite a bit of IP space left. We may need a larger addressable space, but we don't need it tomorrow; the day after tomorrow will be fine.
Somewhat cool solution (Score:2)
The one listed in this article is pretty reasonable for a lot of uses. The article talks about web servers etc. That isn't one of the uses that this would be good for. You will almost always have packets doing some backtracking from the waypoint. This backtracking represents a slowdown. If there are only waypoints in the U.S., imagine a two Europeans trying to use this system. It also represents a cost on behalf of the waypoint. This cost will be passed on to you, as the subscriber. If you are running a heavy, multiserver farm. I'm willing to bet that that cost will be more than buying your own IPs. Besides, there are way easier ways to have multiple webservers behind a NAT which give you more control over the load.
I guess if your ISP (in my case AT&T broadband) set this up, then there would be no or negligable backtracking. ISPs can then entice newer subscribers by allowing them to do this (possibly for an extra fee). I would probably switch ISPs, if there were a broadband ISP that offered this.
What it might be good for is for a home user with a multinode network behind a NAT who ocassionally P2P things, like network gaming and telephony. With this system, each computer could have a copy of Net2Phone running, and can be called by entering the machine's DNS into that product. Similarily, you might be able to do this in games (not in Alien vs Predator, where you can only give an IP, but some games allow DNS).
Where I am skeptical of the above is the speed costs. I said above there would be backtracking. There is also costs in the routing. Telephony doesn't require a low ping, but it is better without it. Gaming requires a low ping.
This might also work well with the file sharing thing. This adds one last bit of skepticism. There is nothing in ICQ that lets me set my DNS. I don't think there is anything in Napster to specify a DNS. Napster and ICQ "know" how to contact you by the IP address you use when connecting to the central server. There is no way to tell htem how to use this system.
Which brings us back to web servers, ftp servers, telephony, and gaming. Don't get me wrong. If telephony worked with this, and I were an international business, I would use this at the very least for intracompany calling/conferencing. I might even have my employees put their machine DNS on their business cards to promote other companies to use telephony.
The chances that the applications will change to allow a DNS field are much higher than the chances of everyone changing to my NATCP idea above. Software, even that much software, is much cheaper to change than all that routing hardware.
I give it a B+ for solving the problem. It may be the best mark I give.
Somewhat cool solution open to DOS (Score:2)
I am going to begin speaking as if you have read the "How does AVES work" page. If you haven't, do it now [cmu.edu]. When I say "locks up", I mean the waypoint won't be able to create new connections to a different NATed machine.
Essentially the problem is that there is a very easy DOS attack, that cannot be removed by the design of the system.
Basically, what you do is you make a bunch of DNS requests without ever making a connection. This will allocate all of the waypoints. If my understanding of this system is correct, a DNS lookup will allocate the waypoint to the specific machine for quite at least a few seconds (so that the proxy can form) if not longer (otherwise it may have problems with applications that cache the IP address, like IE, which don't do a DNS lookup for each connection).
So, find a bunch of unique DNSs (if you use the same DNS, the system can just reuse the same locked machine) that use the same service, and begin allocating. Pretty soon, no one will be able to make a connection to any subscriber.
Note that it is the whole machine that locks up waiting to form the bridge, because the DNS server can't know what port the remote application is going to try to use.
This goes back to the reason why I wouldn't use this system for web servers: there are other ways of having multiple machines as web servers behind a NAT that give you more control over the load.
I would limit this to home use, and even then, expect some script kiddies to knock out your service now and then.
Re:Somewhat cool solution (Score:2)
Incidentally. I figured out how the DOS attack above won't work. You just lock the machine down for that IP. So it will end up locking out the attacker from the services, but not the rest of the world. This is pretty cool stuff, and it can work. You can even set one of these up at home (my cable IP is semi static, so I can us it as a DNS server). I'll raise my rating to a B-. Very good for home use. Possibly feasible for corporate use, but you would want to manage your own waypoints/DNS (to control load issues). You are still open to DOS (just from people trying to flood your waypoints), but not as open as I originally said.
Re:IPv4 Exhaustion? Where? (Score:2)
This hasn't happened...yet. However, it will occur not too far down the road. Actually, I should rephrase that. Unless IPv6 is used, increasingly cumbersome methods of increasing that available IP pool will need to be used.
The growth of broadband, WAP devices and talk of such things as ovens, air conditioners and god-only knows what else being hooked up to the internet will rapidly drain this pool. This is why IPv6 is neccessary. For a really good article on it, check out this CNet story. [cnet.com]
DNS is a pig (Score:2)
The Greenspan approach (Score:2)
Re:connect(aton(AF_INET, ip_address)) (Score:2)
I, of course, agree that games should allow you to enter a domain name instead of an IP address. I also think games should allow you to configure which ports it uses.
--
New Approach? (Score:4)
This works fine for software that uses domain names to communicate. An http request, for example, resolves a domain name and includes that domain name in the request header. That is why virtual domains can work so well under Apache. However, there are other protocols, often somewhat non-standard, that do not use a domain name at any point. These protocols will continue not working under this scheme.
Consider, for example, many multiplayer games. You connect to another person's IP address. You do not use a name. If that person is behind a NAT firewall, I do not see how this proposed solution will help at all.
Besides, for all but huge internal networks protected by NAT, how is this any better than forwarding ports? For example, when you hit port 8080 on the firewall, it is forwarded to port 80 on apache1. When you hit 8081, it is forwarded to apache2, port 80. And so on. Any modern firewall allows this fairly easily and lets you hide a whole series of servers behind a NAT firewall.
The downside, of course, is that the protocol of choice must be able to connect on arbitrary ports. No problem with http but probably you cannot set up your multiplayer game to do this. On the other hand, you do not need to install any new software assuming your firewall is half decent.
--
When you IP address is exhausted... (Score:2)
Re:When you IP address is exhausted... (Score:2)
OpenBSD (Score:2)
In the article, they say:
and
Do they have any plans to support *BSD? I mean, OpenBSD makes a really nice firewall, and I like the way IPFilter works. (It seems a whole lot less kludgy to have a simple text configuration file than to have a full-blown script calling the iptables/ipchains command once for each rule you have. Sigh... I wish Linux used IPFilter.)
--
Re:IPv6, IPv4 and other quirkifications (Score:2)
You don't seem to understand how the MBone [columbia.edu] works. It's the opposite of concentrating on the backbone. Users behind the multicast router get real multicast, and the router tunnels it over unicast IPv4.
The lesson of the MBone is that even when you can put real multicast on people's desktops, the infrastructure still resists change.
Re:Long-term solution...? (Score:2)
http://slashdot.org/articles/00/06/25/0230223.s
(look at post #44)
Replace government search-engine with IP exhaustion an you have some instant karma whoring!
---
Re:IPv6, IPv4 and other quirkifications (Score:2)
---
Re:IPv6, IPv4 and other quirkifications (Score:2)
It seems it boils down to short-sighted economics.
---
INHO (Score:2)
________
Nice, but useless? (Score:4)
--
Re:OK, don't panic (Score:3)
In November of 1996, RFC 2050 [arin.net] regarding Internet Registry IP Allocation Guidelines, and Classless Inter-Domain Routing (CIDR) was introduced and used ever since.
Unfortunately, some people, and certifications (coMCSEugh) cling to the old Class structure, and demand that people remember it, in order to go about properly mucking up large networks with a limited understanding of routing protocols (TCP/IP is a routed protocol, not a routing protocol) .
  -Tommy
Re:New Approach? (Score:2)
It's worth pointing out that versions 0.9 and 1.0 of HTTP (which conforming servers are required to be backwards compatible with) don't send the hostname in the request header. That's why Apache has that workaround where you create a pseudo-directory for each virtual host (i.e. http://bob.example.com/ would be listed as http://bob.example.com/bob/; assuming that 'www' is the machine acting as the server for the virtual hosts, a request to http://www.example.com/bob would get treated the same as http://bob.example.com/bob/ and http://bob.example.com/).
Also, I'm not sure if it's still the case, but there was apparently a chicken-and-egg problem with virtual hosted SSL at one point. In order for the server to get the appropriate 'Host:' header from the client (necessary to determine which virtual host to use), it needed to provide the client with its public key. In order to provide the client with the public key, it needed to know what virtual host the client wanted to connect to.
So even HTTP, which I agree is one of the more ideal examples of a hostname-driven protocol, has its short-comings. In that light, it makes this solution appear even less useful. However, that's not to say it is completely without merit -- it helps illustrate some issues that designers should keep in mind when cooking up new protocols.
Hello PAT and Name Based Hosting (Score:2)
Re:Why not? (Score:2)
--
Solution for IP address depletion? (Score:2)
What?
Oh, yeah! Y-A-W-N
We already have a solution to fix the IP address depletion problem, not to mention other issues with the current IP infrastructure.
It's called (drumroll)
IP V 6
Perhaps you've heard of it?
Always amazes me why people bother directing such a large amount of energy to solving a problem which has already been solved.
Can anyone say "fragmentation"?
Re:IP6 is still a long way away (Score:2)
You may run your own DNS, but I can count the people I know who would get any use out of their own DNS server on one hand.
IP6 is still a long way away (Score:4)
If you're Cisco, you're interested in getting IPv6 capable routers out the door, but recognize the fact that very few people want or need them yet because the 'rest of the internet' doesn't use IPv6 yet. Even if you can muster the cash to make the code change (which Cisco has, if I remember correctly) you still have to provide combo routers and switches, and hope for market penetration to make the investment in IPv6 worth it.
If you're an ATT or a Worldcom, you more than have the cash to do it, but it will make your bottom line look bad if you spend millions on upgrading routers and switches. As we all know, in the U.S. nothing is more important that the bottom line (gag).
If you're a home user, you'd love to go to IPv6 so that you can run your own OpenNap, Icecast, FTP, Web, etc... server, but realize that you will never convince your ISP to allow you to do so since they're still using IP4 protocols and working with backbone providers who use IP4 protocols.
So you use AVES, making it possible for those who would otherwise be force to use it put off IPv6 off just a little longer.
Re:Sounds interesting, but... (Score:2)
I'm not sure I understand what you're referring to here. If the client makes a DNS request (can happen with HTTP, FTP, SMTP, POP, etc.) for a NATed server, then the DNS server will give the client the IP address for a waypoint.
At the same time that the client is receiving the info on the IP address, the waypoint is receiving info from the DNS server that it should expect a packet from the client's IP address 1.2.3.4 and forward it to 5.6.7.8:901 (the address for the NAT box and a predetermined port number based on the service requested). At some point, the waypoint or the DNS server must also notify the NATed server of the originating IP address 1.2.3.4 so it can serve the request without having to travel back thru the waypoint. I don't know if this is a seperate packet, or if the TCP header is unmodified, or what. I didn't see any details on that.
The NAT box receives the forwarded packet, and since it recognizes the waypoint (?or does it simply let all packets thru? it's not clear form the write-up AFAICT), it lets the packet thru and forwards it to the NATed server.
The NATed server processes the request and replies to the client's original IP address. A tunnel thru the NAT box has now been opened.
A way to bypass the waypoint for the rest of the "conversation" might be to set an extremely low TTL on the DNS records. The DNS records (Dynamic DNS) would be automatically updated from a request by the NAT box (or waypoint) once the initial request is served, along with a higher TTL. The tunnel should now be opened on the NAT box, and it can set a DNS record with it's IP address. The client IP 1.2.3.4 would clear it's DNS cache of the original record and retransmit a DNS request, which would give it the IP of the NAT box.
Errr...wait...that wouldn't work for at least one reason. If a DNS request came from another source during that conversation, it would receive the NAT box's address, but the NAT would drop it, as no connection was established. The only way I can think of right now to implement it, would be to have the DNS server keep track of the requests served, and after serving a client the waypoint IP, serves that client (and only that client) with the NAT IP.
This is a very nonscalable, kludgy, and high overhead proposition. On the one hand, you can route all the client to server traffic thru a waypoint. That's a lot of bandwidth if people actually use this. OTOH, you can try to hack together what I mentioned with DDNS. That's a lot of overhead, and may require the client to install software to modify lookup times and such. Oh well...nice research project at least. At least he got featured on Slashdot (every CS/CE student's dream, isn't it?)
What am I missing? (Score:2)
This appears to be about as revolutionary as a coal-fired pocket calculator. Sure, it addresses a need, but in a round-about and probably unsustainable way.
Individual machine addressing through NAT has always been possible using free, commonly-available VPN tools. I've done this for my home machines for years by bouncing traffic through a colo box. It works because I'm willing to pay for the bandwidth. Who's going to pay to run these "Waystations" when they could instead put their resources into fine-tuning IPv6?
ip6 (Score:4)
Since IP6 is a logical solution to the problem with address, is there any reason we shouldn't push hardware companies to adopt it instead of focusing so much on workarounds?
this is how we create messes (Score:2)
The problem isn't a shortage of IP addresses, it's a shortage of well-known ports. There are only so many port 80s and port 23s to go around. However, there are a lot of other ports, and there are good, reliable, safe ways of forwarding them (firewall forwarders, ssh, SOCKS, ...). Rather than fixing subtle assumptions about name/IP correspondences in lots of software, I'd rather be fixing software that hardcodes port numbers; the latter is much easier to find and code.
AVES is a prototypical example of how we create messes and maintenance headaches: it looks like it solves most of the problem and, hey, we can fix the remaining problems, right? But it isn't the right thing to do, and the long term costs of creating such a mess would be high. Fortunately, I don't think it will catch on: ISPs don't want people to run servers anyway.
Re:this is how we create messes (Score:2)
Re:this is how we create messes (Score:2)
wait, can't port forwarding already do this? (Score:2)
after reading through that stuff, i didn't see anything that new or breath-takingly cool. so a dns lookup scheme that works with nat to do host forwarding instead of port forwarding. true, i hadn't thought of it meself, so i'll give them that credit.
Neat idea, but it's asymmetric routing (Score:3)
which will bollix up many kinds of firewalls.
The fourth diagram on the "How Does Aves Work? [cmu.edu]" page shows this clearly.
An example: my home firewall sees an HTTP request go out to pc.john.avesnet.net, for which (according to the explanation) a DNS lookup gets an IP address [1.2.3.4]. [1.2.3.4] is actually the IP of an "AVES waypoint" host. The waypoint processes my original HTTP request, and sends it along to the actual machine behind some NATbox (which has an IP of [5.6.7.8]) somewhere, which replies to my browser. But the reply doesn't originate from [1.2.3.4], which is where my firewall is looking for a reply to the original query -- instead, it arrives with a source IP of [5.6.7.8], which is the IP of the NATbox behind which pc.john.avesnet.net actually sits. To my firewall, this looks like an incoming connection attempt that is unrelated to any outgoing traffic, so it gets DROPped on the floor.
So, far from requiring no upgrades on the part of the end-browser, this scheme will require anyone with a firewall or a NATbox (such as my P90 running ipchains [cjb.net], or a linksys BEFSR41 [linksys.com], or some other cablemodem/DSL access sharing device) to understand the protocol and deploy mechanisms for handling it.
Re:We are not suffering from IPv4 exhaustion (Score:5)
IPv6 is coming...and we won't run out of addresses. We need creative ways to deal with problems that we have right now as we wait for IPv6.
The issue of NATed addresses is a real one and a barrier for peer-2-peer communications, not the hype, but true application-to- application communications that can allow networks to understand their state and topology to make intelligent routing and communications decisions. In order for this to occur the Internet needs to go back to its roots of true bi-directional communications. Publishers cannot simply view nodes as passive receivers of content...but as active participants on the network at large with important things to say and receive. The current trend for ISPs to provide asynchronous bandwidth is our next barrier and a trend that hopefully is reversed as more devices and home users demand to be publishers of content and information.