Tell me more ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

So our ISP has set up IPv6 recently, and I've been studying what the transition should entail before jumping into the fray.

I've noticed three very important issues:

  1. Our office NAT router (an old Linksys BEFSR41) does not support IPv6. Nor does any newer router, AFAICT. The book I'm reading about IPv6 tells me that it makes NAT "unnecessary" anyway.

  2. If we're supposed to just get rid of this router and plug everything directly to the Internet, I start to panic. There's no way in hell I'll put our billing database (With lots of credit card information!) on the internet for everyone to see. Even if I were to propose setting up Windows' firewall on it to allow only 6 addresses to have any access to it at all, I still break out in a cold sweat. I don't trust Windows, Windows' firewall, or the network at large enough to even be remotely comfortable with that.

  3. There's a few old hardware devices (ie, printers) that have absolutely no IPv6 capability at all. And likely a laundry list of security issues that date back to around 1998. And likely no way to actually patch them in any way. And no funding for new printers.

I hear that IPv6 and IPSEC are supposed to make all this secure somehow, but without physically separated networks that make these devices invisible to the Internet, I really can't see how. I can likewise really see how any defences I create will be overrun in short order. I've been running servers on the Internet for years now and I'm quite familiar with the sort of things necessary to secure those, but putting something Private on the network like our billing database has always been completely out of the question.

What should I be replacing NAT with, if we don't have physically separate networks?

share|improve this question
8  
Can you try re-asking this? Right now it seems to be fairly argumentative. – Zoredache Sep 24 '10 at 23:42
7  
The things you are shocked about don't exist. Perhaps you should reformat your question in a way describing the things you believe are facts and ask us to confirm them. Instead of complaining about things that you have assumed will work a certain way. – Zoredache Sep 25 '10 at 0:05
12  
Also - you're storing credit card information? And you have this many questions about security? Have you ever passed a PCI audit? Or are you breaking your contract by storing the credit card details? You may want to look into this, post-haste. – mfinni Sep 25 '10 at 1:09
4  
I can't in good conscience down-vote or vote-to-close this question on either the grounds that the poster is ill-informed (surely that's half the point of the site). Granted, the OP is going off on a big tangent based on a false assumption, and the question could do with a re-write. – Chris Thorpe Sep 25 '10 at 1:47
1  
However the question was asked, it illicited interesting replies, and probably turns up in search results for people with similar fears so +1 – dunxd Feb 15 '11 at 12:59
show 5 more comments

9 Answers

up vote 98 down vote accepted

First and foremost, there is nothing to fear from being on a public IP allocation, so long as your security devices are configured right.

What should I be replacing NAT with, if we don't have physically separate networks?

The same thing we've been physically separating them with since the 1980's, routers and firewalls. The one big security gain you get with NAT is that it forces you into a default-deny configuration. In order to get any service through it, you have to explicitly punch holes. The fancier devices even allow you to apply IP-based ACLs to those holes, just like a firewall. Probably because they have 'Firewall' on the box, actually.

A correctly configured firewall provides exactly the same service as a NAT gateway. NAT gateways are frequently used because they're easier to get into a secure config than most firewalls.

I hear that IPv6 and IPSEC are supposed to make all this secure somehow, but without physically separated networks that make these devices invisible to the Internet, I really can't see how.

This is a misconception. I work for a University that has a /16 IPv4 allocation, and the vast, vast majority of our IP address consumption is on that public allocation. Certainly all of our end-user workstations and printers. Our RFC1918 consumption is limited to network devices and certain specific servers where such addresses are required. I would not be surprised if you just shivered just now, because I certainly did when I showed up on my first day and saw the post-it on my monitor with my IP address.

And yet, we survive. Why? Because we have an exterior firewall configured for default-deny with limited ICMP throughput. Just because 140.160.123.45 is theoretically routeable, does not mean you can get there from wherever you are on the public internet. This is what firewalls were designed to do.

Given the right router configs, and different subnets in our allocation can be completely unreachable from each other. You do can do this in router tables or firewalls. This is a separate network and has satisfied our security auditors in the past.

There's no way in hell I'll put our billing database (With lots of credit card information!) on the internet for everyone to see.

Our billing database is on a public IPv4 address, and has been for its entire existence, but we have proof you can't get there from here. Just because an address is on the public v4 routeable list does not mean it is guaranteed to be delivered. The two firewalls between the evils of the Internet and the actual database ports filter out the evil. Even from my desk, behind the first firewall, I can't get to that database.

Credit-card information is one special case. That's subject to the PCI-DSS standards, and the standards state directly that servers that contain such data have to be behind a NAT gateway1. Ours are, and these three servers represent our total server usage of RFC1918 addresses. It doesn't add any security, just a layer of complexity, but we need to get that checkbox checked for audits.


The original "IPv6 makes NAT a thing of the past" idea was put forward before the Internet boom really hit full mainstream. In 1995 NAT was a workaround for getting around a small IP allocation. In 2005 it was enshrined in many Security Best Practices document, and at least one major standard (PCI-DSS to be specific). The only concrete benefit NAT gives is that an external entity performing recon on the network doesn't know what the IP landscape looks like behind the NAT device (though thanks to RFC1918 they have a good guess), and on NAT-free IPv4 (such as my work) that isn't the case. It's a small step in defense-in-depth, not a big one.

The replacement for RFC1918 addresses are what are called Unique Local Addresses. Like RFC1918, they don't route unless peers specifically agree to let them route. Unlike RFC1918, they are (probably) globally unique. IPv6 address translators that translate a ULA to a Global IP do exist in the higher range perimeter gear, definitely not in the SOHO gear yet.

You can survive just fine with a public IP address. Just keep in mind that 'public' does not guarantee 'reachable', and you'll be fine.


1: The PCI-DSS standards changed in October 2010, the statement mandating RFC1918 addresses was removed, and 'network isolation' replaced it.

share|improve this answer
I marked this as Accepted because it's the more complete answer. I guess that since every firewall configuration tome I've ever read (since about 1997, when I started in the field, and that includes building FreeBSD firewalls by hand) has stressed the use of RFC1918, that this didn't really make any sense to me. Of course, as an ISP we're going to have some issues with end users and their cheap routers when we run out of IPv4 addresses, and that's not going away anytime soon. – Ernie Sep 27 '10 at 16:11

Our office NAT router (an old Linksys BEFSR41) does not support IPv6. Nor does any newer router

IPv6 is supported by many routers. Just not that many of the cheap ones aimed at consumers and SOHO. Worst case, just use a Linux box or re-flash your router with dd-wrt or something to get IPv6 support. There are many options, you probably just have to look harder.

If we're supposed to just get rid of this router and plug everything directly to the Internet,

Nothing about a transition to IPv6 suggests you should get rid of perimeter security devices, like your router/firewall. Routers and firewalls will still be a required component of pretty much every network.

All NAT routers effectively act as a stateful firewall. There is nothing magic about the use of RFC1918 addresses that protect you all that much. It is the stateful bit that does the hard work. A properly configured firewall will protect you just as well if you are using real or private addresses.

The only protection you get from RFC1918 addresses is that allows people to get away with errors/laziness in your firewall config and still not be all that vulnerable.

There's a few old hardware devices (ie, printers) that have absolutely no IPv6 capability at all.

So? It is hardly likely that you will need to make that available over the Internet, and on your internal network, you can continue to run IPv4, and IPv6 until all your devices are supported or replaced.

If running multiple protocols is not an option you may have to setup some kind of gateway/proxy.

IPSEC are supposed to make all this secure somehow

IPSEC encrypted and authenticates packets. It has nothing to do with getting rid of your border device, and has more protecting the data in transit.

share|improve this answer
Right in so many ways. – sysadmin1138 Sep 25 '10 at 0:49
2  
Exactly, get a real router and you won't have to worry. SonicWall has some excellent options to provide the security you need and will support IPv6 without a problem. This option will probably offer better security and performance than what you currently have. (news.sonicwall.com/index.php?s=43&item=1022) As you can see in this article, you can also do ipv4 to ipv6 translation with sonicwall devices for those that can't handle ipv6. – MaQleod Sep 25 '10 at 4:54

The PCI-DSS requirement for NAT is well known to be security theater and not actual security.

The most recent PCI-DSS has backed off from calling NAT an absolute requirement. Many organizations have passed PCI-DSS audits with IPv4 without NAT showing stateful firewalls as "equivalent security implementations".

There are other security theater documents out there calling for NAT, but, because it destroys audit trails and makes incident investigation/mitigation more difficult, a more in-depth study of NAT (with or without PAT) to be a net security negative.

A good stateful firewall without NAT is a vastly superior solution to NAT in an IPv6 world. In IPv4, NAT is a necessary evil to be tolerated for the sake of address conservation.

share|improve this answer
1  
NAT is "lazy security". And with "lazy security" comes lack of attention to detail, and the ensuing loss of the security that was intended. – Skaperen Aug 21 '12 at 17:14

It will (sadly) be a while before you can get away with a single-stack IPv6-only network. Until then, dual-stack with preference for IPv6 when available is the way to run.

While most consumer routers don't support IPv6 with stock firmware today, many can support it with 3rd-party firmwares (eg, Linksys WRT54G with dd-wrt, etc.). Also, many business-class devices (Cisco, Juniper) support IPv6 out-of-the-box.

It's important not to confuse PAT (many-to-one NAT, as is common on consumer routers) with other forms of NAT, and with NAT-free firewalling; once the internet becomes IPv6-only, firewalls will still prevent exposure of internal services. Likewise, an IPv4 system with one-to-one NAT is not automatically protected; that's the job of a firewall policy.

share|improve this answer

There is a huge amount of confusion about this subject, as network administrators see NAT in one light, and small business and residential customers see it in another. Let me clarify.

Static NAT (sometimes called one-to-one NAT) offers absolutely no protection for your private network or an individual PC. Changing the IP address is meaningless as far as protection is concerned.

Dynamic Overloaded NAT/PAT like what most residential gateways and wifi AP's do absolutely helps protect your private network and/or your PC. By design the NAT table in these devices is a state table. It keeps track of outbound requests and maps them in the NAT table--the connections time out after a certain amount of time. Any unsolicited inbound frames that don't match what's in the NAT table are dropped by default--the NAT router doesn't know where to send them in the private network so it drops them. In this way, the only device you are leaving vulnerable to being hacked into is your router. Since most security exploits are Windows based--having a device like this between the internet and your Windows PC's really helps protect your network. It may not be the originally intended function, which was to save on public IP's, but it gets the job done. As a bonus, most of these devices also have firewall capabilities that many times block ICMP requests by default, which also helps protect the network.

Given the above information, disposing with NAT when moving to IPv6 could expose millions of consumer and small business devices to potential hacking. It will have little to no affect on corporate networks as they have professionally managed firewalls at their edge. Consumer and small business networks may possibly no longer have a *nix based NAT router between the internet and their PC's. There is no reason that a person couldn't switch to a firewall only solution--much safer if deployed correctly, but also beyond the scope of what 99% of consumers understand how to do. Dynamic Overloaded NAT gives a modicum of protection just by using it--plug in your residential router and you are protected. Easy.

That said, there is no reason that NAT couldn't be used in the exact same way it is being used in IPv4. In fact, a router could be designed to have one IPv6 address on the WAN port with an IPv4 private network behind it that NAT's onto it(for example). This would be a simple solution for consumer and residential people. Another option is to put all devices with public IPv6 IP's--- the intermediate device then could act as a L2 device, but provide a state table, packet inspection, and fully functioning firewall. Essentially, no NAT, but still blocking any unsolicited inbound frames. The important thing to remember is that you shouldn't plug your PC's directly into your WAN connection with no intermediary device. Unless of course you want to rely on the Windows firewall. . . and that's a different discussion. Every network, even home networks, need an edge device protecting the local network, in addition to using the Windows firewall.

There will be some growing pains moving to IPv6, but there isn't any problem that won't be able to be resolved fairly easily. Will you have to ditch your old IPv4 router or residential gateway? Maybe, but there will be inexpensive new solutions available when the time comes. Hopefully many devices will just need a firmware flash. Could IPv6 been designed to fit more seamlessly into the current architecture? Sure, but it is what it is and it's not going away--So you might as well learn it, live it, love it.

share|improve this answer
1  
For what it's worth, I'd like to reiterate that the current architecture is fundamentally broken (end-to-end routability) and this creates practical problems in complex networks (redundant NAT devices are overly complex and expensive). Dropping the NAT hack will reduce complexity and potential points of failure, while security is maintained by simple stateful firewalls (I can't imagine for a second a SOHO router coming without the stateful firewall enabled by default so customers can plug-n-play without a thought). – Chris S Jun 9 '11 at 14:51
Sometimes broken end-to-end routability is exactly what you want. I don't want my printers and PC's being able to be routed to from the internet. While NAT started as a hack, it has evolved into a very usable tool, that in some instances can improve security by removing the potential for packets to route directly to a node. If I have an RFC1918 IP assigned statically on a PC, under no circumstances is that IP going to be routeable on the internet. – Computerguy Jun 9 '11 at 20:01
4  
Broken routability is A Bad Thing™. What you want is for your devices to be unreachable by the Internet (by firewall), that's not the same thing. See Why would you use IPv6 internally?. Also, RFC1918 states that those address should be used for private networks only, and access to the Internet should only be provided by application layer gateways (which NAT is not). For external connections the host should be assigned an address from an IANA coordinated allocation. Hacks, no matter how useful, make unnecessary compromises and aren't the 'right' way. – Chris S Jun 9 '11 at 20:56

RFC 4864 describes IPv6 Local Network Protection, a set of approaches for providing the perceived benefits of NAT in an IPv6 environment, without actually having to resort to NAT.

This document has described a number of techniques that may be combined on an IPv6 site to protect the integrity of its network architecture. These techniques, known collectively as Local Network Protection, retain the concept of a well-defined boundary between "inside" and "outside" the private network and allow firewalling, topology hiding, and privacy. However, because they preserve address transparency where it is needed, they achieve these goals without the disadvantage of address translation. Thus, Local Network Protection in IPv6 can provide the benefits of IPv4 Network Address Translation without the corresponding disadvantages.

It first lays out what the perceived benefits of NAT are (and debunks them when appropriate), then describes the features of IPv6 which can be used to provide those same benefits. It also provides implementation notes and case studies.

While it's too long to reprint here, the benefits discussed are:

  • A simple gateway between "inside" and "outside"
  • The stateful firewall
  • User/application tracking
  • Privacy and topology hiding
  • Independent control of addressing in a private network
  • Multihoming/renumbering

This pretty much covers all the scenarios in which one might have wanted NAT and offers solutions for implementing them in IPv6 without NAT.

For a more general discussion of IPv6 transition security, see RFC 4942.

share|improve this answer

FYI, anyone interesting is using NAT/NAPT with IPV6 can. All BSD operating systems that have PF support NAT66. Works great. From a blog we used:

ipv6 nat (nat66) by FreeBSD pf

although nat66 is still under draft, but FreeBSD pf already support it for long time.

(edit the pf.conf and insert following codes)

v6_wan_if="your-v6-wan-interface-name"

v6_wan_ip="your-v6-wan-ip-address"

no nat on $v6_wan_if inet6 from $v6_wan_ip to any

nat on $v6_wan_if inet6 from any to any -> $v6_wan_ip    

You are all set!

Works great for us folks who have been using squid with a single IP address for years. With IPv6 NAT, I can get 2^120 private addresses (site local) which includes 2^56 subnets long with my 5 /64 subnets. That means I must be 100 billion times smarter than any other IPv6 guru here because I have more addresses.:D

The truth is that just because I have more addresses (or may have used IPv6 longer than you), really does not make IPv6 (or me for the same issue) better. It does, however, make IPv6 more complex where a firewall is required in place of PAT and NAT is no longer a requirement, but is an option. The goal of the firewall is to allow all outbound connections and keep the state, but block inbound initiated connections.

As for NAPT (NAT with PAT), it will take some time to get people out of the mindset. For example, until we can get your great-grandfather to setup his own IPv6 firewall without site-local addressing (private addresses) and without any guru assistance, it might be a good idea to toy with the possible idea of NAT since that will be all he knows.

share|improve this answer
2  
Your average SOHO gear which eventually supports IPv6 will almost certainly come without IPv6 NAT (which the NAT66 you're quoting doesn't work the same as NATv4, but we'll go with it anyway) and come with a default to deny rule for inbound traffic (along with an allow outbound connections statefully) which is provides almost all the same security today's IPv4 SOHO gear does. As other have pointed out, we understand people get complacent and comfortable with their hack technologies, that doesn't mean they're necessary or little more than security theater. – Chris S Jun 4 '11 at 2:53
NAT66 does not need to work the same as NAT44. It only needs to sounds the same so we can nab people quicker onto IPv6. Once they are onto IPv6, we should be able to work as a team to get them properly configuring a firewall. Either we work as a team or we need to starting using NAT44444. Your choice. – gnarlymarley Jun 13 '11 at 4:28

The recent proposals put forward for ipv6 have suggested engineers working on the new technology will incorporate NAT into ipv6, reason given: NAT offers an additional layer of security

The documentation is on the ipv6.com website, so it would seem all these answers stating NAT offers no security are looking a little embarrassed

share|improve this answer
1  
Maybe you could expand on exactly what it is about NAT you think offers an additional layer of security? Specifically, what risk against what particular threat is mitigated? – growse Oct 27 '12 at 11:46
The 'security' provided by NAT is obfuscation and forcing a network into a default-deny posture, the former is debatable while the later is a good idea. Default-deny can be achieved through other means just as easily though, and IPv6 removes one of the major technical reasons for NAT: IP scarcity. – sysadmin1138 Oct 27 '12 at 13:29
1  
There's a page on IPv6.com about NAT. Amongst other things, it has this to say: "The security issue is often used in the defense of the Network Address Translation process. However, the core principle of Internet is to offer an end-to-end connectivity to the different network resources." and also this: "As the IPv6 slowly replaces the IPv4 protocol, the network address translation process will become redundant and useless." – Ladadadada Oct 27 '12 at 13:29

I realize that at some future point (that can only be speculated) regional IPv4 address's will inevitably run out. I agree IPv6 has some serious user disadvantages. The issue of NAT is extremely important as it does inherently provide security,redundancy,privacy and allows users to connect almost as many devices as they want without restriction. Yes a firewall is the golden standard against unsolicited network intrusion, but NAT not only add's another layer of protection it also generally provides a secure by default design regardless of the firewall configuration or the end user's knowledge there of,no matter how you define it IPv4 with NAT and a firewall is still more secure by default then IPv6 with only a firewall. Another issue is privacy, having an internet routable address on every device will open up users to all kinds of potential privacy violations,personal information collection and tracking in way's that are hardly imaginably today in such mass. I'm also of the opinion that without Nat we may be opened up to added costs and control through Isp's. Isp's may start charging on per device or per user usage rates like we already see with USB tethering, this would greatly reduce the end user's freedom to openly connect any device they see fit on there line. As of right now few US ISP's offer IPv6 in any form and I feel non tech business's will be slow to switch because of the added cost with little or no value gained. Certainly IPv6 has a few advantages without NAT but with the added complexities of IPv6 not to mention application and service availability and many other issues will propel IPv4 for at least another ten years if not longer.

share|improve this answer
1  
NAT is an illusion of security. – Skaperen Aug 21 '12 at 17:15
1  
NAT provides no protection at all. It's the automatic firewall you get with NAT that provides any "protection" you might enjoy while you're also enjoying all of NAT's disadvantages. – Michael Hampton Aug 24 '12 at 6:48

protected by voretaq7 Nov 11 '12 at 2:15

This question is protected to prevent "thanks!", "me too!", or spam answers by new users. To answer it, you must have earned at least 10 reputation on this site.

Not the answer you're looking for? Browse other questions tagged or ask your own question.