← Back to context

Comment by mannyv

7 hours ago

You are wrong because you are being overly pedantic.

NAT provides security because normally it disallows external actors on the outside from accessing resources on the inside side.

A firewall is not required for NAT to work, although many firewalls have NAT built-in. And indeed, if a firewall is off NAT can still function (if NAT is separate).

Your definition of security is too narrow.

And saying that NAT is broken all the time, implying that NAT is not security, is ridiculous. SSH is 'broken' all the time. TLS is broken all the time.

Here's the end point: NAT effectively reduces the attack surface for a home network to the router. That is security, practically speaking.

> And indeed, if a firewall is off NAT can still function (if NAT is separate).

Well technically you can translate your /16 to look like a different /16 from the outside. IE each internal address gets turned into its own separate external address.

But that's not how NAT gets used in practice. How it actually gets used is to but many hidden addresses behind one or a few public addresses. And that multiplexing necessarily implies that incoming connections must be specifically told where to go; ie that there's a firewall.

> NAT provides security because normally it disallows external actors on the outside from accessing resources on the inside side.

Which NAT?

A 1:1 'basic' NAT [1] could allow stateless flow between two different address schemes. Then you have NAPT where multiple IPs can be mapped via one-IP-many-port system, in which you need state and thus have a filtering mechanism.

Similarly you can have IPv6 ULA and do a stateless address translation (NPT) without any blocking policy, which would achieve the same (lack of) security as the 1:1 scenario above.

Address translation can have the same level (or not) of security in both IPv4 and IPv6.

[1] https://datatracker.ietf.org/doc/html/rfc2663#section-4.1.1

> NAT provides security because normally it disallows external actors on the outside from accessing resources on the inside side.

Any good firewall does the same, by having a default “no” rule for incoming connections.

> A firewall is not required for NAT to work

Do you have any examples of NAT that isn't implemented in a more general firewall subsystem?

> NAT effectively reduces the attack surface for a home network to the router.

While true, this doesn't add to the argument for/against IPv6. That is just security provided by default configuration, which can be provided many other ways and could be before the subset of NAT you are talking about was common.

  • > Do you have any examples of NAT that isn't implemented in a more general firewall subsystem?

    When I was a network engineer, we did NAT on edge routers for B2B connections all the time. Like literally hundreds of thousands of them. I am 100% serious on this.

Busses aren't for safety. Seatbelts and airbags and etc are. Busses are just for moving large numbers of people around efficiently.

And yet statistically I'm safer on a bus. Therefore it's reasonable to ride the bus "for safety".

  • I would phrase it as: NAT accidentally "breaks" or "makes harder/impossible" something which yields increased security, under some circumstances.