为什么要在内部使用IPv6?


50

当然,由于地址用完了,我意识到有必要在开放的Internet上使用IPv6,但是我真的不明白为什么在内部网络上需要使用IPv6。我对IPv6所做的工作为零,所以我也想知道:现代防火墙是否在内部IPv4地址和外部IPv6地址之间进行NAT?

我只是想知道,因为在这里看到这么多人都在为IPv6问题而苦苦挣扎,想知道为什么要打扰?

Answers:


55

没有用于IPv6的NAT(无论如何,您都会想到NAT)。NAT是IPv4耗尽地址的$ EXPLETIVE临时解决方案(这个问题实际上并不存在,并且在需要NAT之前已得到解决,但是历史是20/20)。它只会增加复杂性,只会增加IPv6的麻烦(我们有太多的IPv6地址,我们毫不掩饰地浪费了它们)。NAT66确实存在,并且旨在减少每个主机使用的IPv6地址的数量(IPv6主机具有多个地址是正常的,IPv6在许多方面与IPv4有所不同,这是一个)。

互联网被认为是端到端可路由的,这是发明IPv4的原因之一,也是它得到认可的原因。这并不是说Internet上的所有地址都应该可以访问。NAT都打破了。防火墙通过破坏可达性来增加安全性,但是通常以牺牲可路由性为代价。

您将需要网络中的IPv6,因为无法用IPv4地址指定IPv6端点。另一种方法确实可行,这使使用DNS64和NAT64的仅IPv6网络仍可以访问IPv4 Internet。尽管设置起来有些麻烦,但实际上实际上今天可以抛弃IPv4。可以从IPv4内部地址代理到IPv6服务器。添加和配置代理服务器会增加网络的配置,硬件和维护成本。通常不仅仅是简单地启用IPv6。

NAT也引起它自己的问题。路由器必须能够协调通过它运行的每个连接,并跟踪端点,端口,超时等。通常,所有流量都是通过该单个点进行的。尽管可以构建冗余的NAT路由器,但该技术非常复杂且通常很昂贵。冗余简单路由器既简单又便宜(相对)。另外,要重新建立某些可路由性,必须在NAT系统上建立转发和转换规则。这仍然会破坏嵌入IP地址的协议,例如SIP。发明了UPNP,STUN和其他协议也可以帮助解决此问题-更加复杂,需要更多维护,更多可能出错的地方


29
运行NAT的路由器是分隔网络的路由器,该路由器仍将分隔网络,除了必须为IPv6正确编程之外,什么都没有改变。可以路由,但不一定可以到达(防火墙规则可能会阻止大多数流量)。
克里斯S

12
@Tomtom:任何认为自己需要的人都不知道需要防火墙。除了地址稀缺引起的问题外,从根本上说,NAT是最佳解决方案。在IPv6中不存在寻址不足的问题(至今!)。它可能正在开发中,但这并不意味着它不是一个愚蠢的想法:)
增长

6
@JimB-据我所知,至少有4个不同的IPv6 NAT提案正在开发中,但所有提案都失败了。鉴于该页面已经使用了将近3年,所以我现在要猜测它也已经失败了
马克·亨德森

14
我知道这听起来令人反感,所以我在前面道歉,但是如果您不是这样,厨师就不要在厨房里。人们知道,如果自己动车,可能会破坏某些东西,从而造成严重的伤害……计算机安全也是如此,如果您不知道如何做,最终可能会遭受弊大于利。您确实有一点要说,NAT使某些级别的安全性变得更加容易(最显着且几乎唯一地是您的内部网络不可通过Internet路由)。即使在当今大多数NAT路由器上,这也只是默认设置,并且可以禁用NAT提供的“安全性”。
克里斯·S

8
如果不对漏洞和威胁进行明智的讨论,就不要开始绕开“安全”之类的词。NAT保护哪些特定的漏洞?您在说什么具体的“攻击”?它们是否与其他有状态的防火墙通过状态防火墙缓解的攻击相同?如果是这样,NAT并不会真正给您带来很多好处。
13年

22

耗尽内部(rfc1918)ipv4地址也可能是使用ipv6的非常有效的理由。

康卡斯特在Nanog37上解释了为什么要使用ipv6作为其管理地址。

20 Million video customer
x 2.5 STB/customer
x 2 ip addresses/STB
--------------------  
= 100 Millions IP addresses

这仅仅是视频,而不是数据/调制解调器。

他们在2005年用尽了RFC1918池。然后他们使用了公共地址池(因为nat并不是管理的选择),并使用ipv6来解决他们的需求


2
非大公司呢?
密码

1
好吧,还有所有其他答案;)
petrus

我认为任何公司在内部使用的数量都不会超过16,777,216。没有人质疑我们需要更多的公共IP地址。
KCotreau

5
我不是在谈论路由器的公共/ WAN IP地址,而是在电缆调制解调器或机顶盒上的管理IP地址。是的,Comcast和所有大型电缆提供商的确需要超过2 ^ 24 ip @。
彼得

14

几个原因:

  • IPv6不支持广播。替换为多播。广播使一个节点可以将流量发送到子网上的所有节点。广播域的管理是保持大型IPv4网络快速,平稳运行的主要问题。多播要求要接收“广播”样式的节点实际上为此“注册”,因此网络不会被命中所有主机的流量所淹没。

  • IPv6本机支持IPsec样式加密。

  • IPv6支持自动配置。尽管您仍需要DHCP服务器来分发DHCP选项(例如DNS服务器,TFTP服务器等),但路由器后面的主机也可以不需要DHCP进行配置。


3
IPv6允许对整个子网重新编号,而几乎没有复杂性。它还允许合并子网。它具有对多播流量的极其精细的控制……甚至还有更多原因,但是自从我修读IPv6课程以来,它就永远存在。
马修

4
这些都是流行的神话,这里是更多信息:IPv6的多播对于基本功能是必不可少的:例如,要进行IPv4的ping广播,等效于对所有常规节点ping6到FF02 :: 1,对所有路由器ping FF02 :: 2。IPv6的IPSec与IPv4无关。您没有免费的安全保障。仍然必须配置所有模式,并处理密钥分配。IPv6的自动配置完全是垃圾。默认情况下,它与MAC <-> IPv4一样不安全,并且不分发DNS。如果您要使用DNS,则必须安装DHCPv6,所以那里没有收益。
Marcin

1
我认为第三点是ip6的弱点。您检查了多少次以查看机器是否在故障排除过程中收到了IP?这部分变得更加困难。
Joel Coel

13

我在大型大学的旧工作是在内部使用IPv6分配。他们在一天中被分配了IPv4 / 16,直到今天,IPv4地址仍被分发给几乎每个内部客户端。RFC1918网络仅限于电信网络和某些特定用途(PCI标准要求在2010年10月之前使用RFC1918)。

因此,他们也积极计划在内部使用IPv6。还有一些硬件问题尚待解决,边缘交换机对v6的支持不够好,但核心已经准备就绪。想法是,在网络的公共可见端(好的,公共响应端)获得v6支持将涉及70%的工作以将其部署到每个人,也可能需要额外的30%并最终实现。以它结束。

与公共IP分配一起生活了这么长时间,我们的人们非常清楚这句话:“仅仅因为它是公共的,并不意味着它是可以实现的。” 正如Chris S所说,可路由并不意味着可路由。

这就是为什么至少一类组织会在内部部署IPv6的原因:因为他们已经在内部使用非RFC1918 IPv4。


7

IPv6确实提供了对IPv4的一些潜在的现实改进,例如更简单的自动配置和自动发现机制,从通过端口扫描IP范围跨网络复制恶意软件变得不可行的意义上来说,它也更安全- -IP太多。但是这些改进并不是特别引人注目,并且当然不值得转换成本。

但是请注意,这不是一个非此即彼/或决定,你既可以并行运行,如果你开发的软件,你应该,因为很多人都提到,用于测试目的。如果没有内部IPv6基础架构进行测试,就没有可靠的方法来使程序兼容IPv6。大多数现代OS会在它们之间自动建立内部IPv6网络-只需使用它即可。

10年前,我为供雇主客户使用以获取程序更新的软件构建了一些软件。在构建网络组件时,我必须决定是在构建IPv6兼容性还是在假设所有IP地址均为4字节之间进行选择。我决定采用简单的方法,为自己节省了大约4个小时的工作,并且使该应用程序仅使用IPv4。我认为无论如何,它将在几年内被替换。他们今天仍在使用它,因此被排除在一些较小的市场之外。


6

在一家小型公司工作,我只能想到不使用IPv6的原因。

  • 我们甚至没有IPv6公共地址,那么为什么我们要在内部运行它?
  • 我们将不得不更换我们深爱的防火墙,因为它目前还不支持IPv6。
  • 我们没有办法分配IPv6地址,更不用说控制了
  • 我们只有一半的PC支持IPv6
  • 我们的制造工厂都不支持IPv6
  • 我们的交换机不支持IPv6
  • 我什至从未见过支持IPv6的打印机
  • 从命令行很难使用IPv6-对我来说很重要
  • 我需要完全加快IPv6的速度-当我不感兴趣时​​很难做
  • ...还有我现在无法想到的许多其他原因

像我们这样的公司进行更改只是没有意义,因为这将花费大量的成本和精力,而绝对没有任何收益。

坦率地说,我喜欢NAT以及从处理本地地址中获得的收益。如果对我们来说有必要(相对于成为一个怪胎)与Internet上的IPv6交互,我们将在网关上进行。

我不希望当前的IPv6风潮成为世界绝大多数地区(至少在内部)至少十年或更长时间的必需品。正如我期望届时退休一样,我个人没有太多动力来浪费时间和精力。

编辑:

我的看法不尽人意,但没有一个合乎逻辑和明智的反对观点。让我觉得这只是一群随波逐流的极客,他们想随波逐流而不必考虑它。必须有一个原因才能对网络进行如此大的更改,而我却没有。此外,我强烈怀疑只有极少数的SF用户确实拥有一个。


2
1.向您的ISP进行分配。与IPv4不同,您不能仅请求阻止。您必须有能力在6个月内用完X笔。
布赖恩

2
3.通过使用IPv6地址设置路由器进行分配,然后让计算机自行进行自我配置。(或设置Dhcp6)
Brian

4
4. Windows XP SP2支持IPv6。6.交换机不讲IP。他们交谈第2层。它们与Ipv6正常工作我已经在一些2001 3com交换机上运行Ipv6。您可能仍需要支持ipv4才能管理其中的一些。.过去5年(或以后)出售Jetjet卡的任何HP打印机都支持IPv6
Brian

1
“我们的交换机不支持IPv6”。没问题 我做到了,“我什至从未见过支持IPv6的打印机”,它已经6岁了,就在我旁边。(廉价的戴尔激光)。“我需要完全加快IPv6的速度-当我不感兴趣时​​很难做到” Aye。在这里我同意。学习新东西很难。但是,作为唯一一个了解它的人(并且几年后您将需要它)是一个很大的优势。
Hennes

1
@Hennes,已经涵盖了所有内容,据我所知,在我的工作生涯中,我将不再需要IPv6,而且我永远不会在家中使用它。IOW,我绝对没有动力去学习一种技术,至少在这个世界上,对于这种技术,这是没有必要的,而且不会在可预见的将来出现。我确实不同意学习新知识很难。我一生中的每一天都在这样做,并希望继续这样做,直到我掉下来。
John Gardeniers

5

我们在这里谈论两件事-在纯IPv6上运行内部网络或在IPv4 / IPv6双协议栈上运行。我认为谈论运行纯IPv6为时尚早,在许多操作系统上,如果没有IPv4,使用IPv6甚至是不可能的。但是,出于以下原因(a),如果您开发软件(b)以便为不可避免的向IPv6的迁移做好准备,则可以考虑运行双堆栈。如果您的情况是A,那么您应该立即采取行动,如果您的情况是B,那么根据我的估计,您大约有1-2年的时间来考虑它(但是,越早开始,您就会越有准备)。

我的情况是A,现在我们正在运行双堆栈6个月。在这段时间里,我们发现并解决了公共/私有DNS,地址分配,DHCP,路由,防火墙等一些问题,如果没有尝试,我们甚至无法预料到其中许多问题。现在,我们已经完全支持IPv6,甚至可以通过隧道进行IPv6公共访问。根据我的经验,我可以自信地说IPv6比老化的IPv4更简单,更优雅的解决方案,因此,当需要切换到IPv6时,我会感到非常高兴,但在此之前,双栈是最有效的方法去。


4

除了更大的地址空间,广播的缺失,IPSec和更简单的自动配置之外,IPv6还具有一些“尚不为人所知”的优点:

  1. 地址空间越大,意味着地址具有更多可用作数据存储的位。例如,两个节点之间的跳数可以是它们的IPv6地址的函数,例如:
    IPv6地址可以采用格式,PREFIX:Country&Region:DC&Line:Rack&Unit:VM&ID因此更近的节点将具有更多的最高有效位相同。这仅是示例,当然“亲密性”度量标准可以存储在某种外部数据库(例如DNS TXT|SRV记录)中。

  2. 有一些将IPv6的地址空间用于加密目的的技术,例如加密生成的地址(CGA)和SEND (安全邻居发现)

  3. 启用IPv6时,网络中的所有节点都具有本地链接的IPv6地址(如果未另行配置)。因此,您甚至有可能访问错误配置的节点。

  4. 您可以直接从本地链接的IPv6地址获取节点的MAC地址(如果未配置IPv6隐私扩展

  5. 您无法在具有数千个节点的子网中使用IPv4-网络将因广播流量(例如ARP)而超载。

  6. 您可以使用节点信息查询节点以获取其他信息,例如,在BSD中,您可以查询主机以获取ICMPv6节点信息节点地址:

$ ping6 -a Aacgsl ::1

PING6(72=40+8+24 bytes) ::1 --> ::1
136 bytes from ::1: 
  fe80::beae:c5ff:fe43:44a(TTL=infty)
  fe80::beae:c5ff:fe43:212(TTL=infty)
  ::1(TTL=infty)
  fe80::1(TTL=infty)
  2a02::9222(TTL=infty)

2

我可以想到将IPv6用于内部主机的两个原因。

  1. 将来您可能会发现此主机现在至少在某些端口上需要外部可用。

  2. 您可能会发现该主机需要连接到另一个也选择了相同内部地址的主机。例如,您需要连接到Acme公司的10.0.0.5,而您自己在Emca公司的地址也是10.0.0.5。我记得在以前的工作中发生过这种情况,我们都使用了相同的内部地址。

我要说的是,在现代世界中,大多数计算机不是100%内部的。大多数台式机只能与外界建立有限的连接,反之亦然。


1

内部采用IPv6的唯一好的理由是当世界切换到IPv6时做好准备,考虑到采用率,这是一个非常糟糕的理由。由于大多数内部IP都无法从外部访问,因此转换其余IP无关紧要。

我的公司可能永远不会在内部切换到IPv6。这将需要从根本上改变政策,以至于我无法诚实地设想出它如何实现。很多人将不得不被杀,并且许多莫名其妙的雇用选择将不得不做出。同样,由于互操作性和可维护性方面的考虑,公司业务网络霸主将对单个业务部门在其LAN上切换到IPv6的任何尝试予以制止(我们在本地留有很多回旋余地,但没有那么多。)

基本上,如果切换到IPv6很轻松,我们早在几年前就已经做到了。


16
“我的公司可能永远不会在内部切换到IPv6。” <-这是一个非常大胆甚至天真的声明,恕我直言。
EEAA 2011年

4
@erika:当很难获得支持IPv4的硬件时,他们会这样做。在那之前,没有。没有任何商业案例。他们更有可能完全放弃内部网络,并将整个业务托管在某个地方的云中。
2011年

3
Google或其他一些外部服务放弃对IPv4的支持时会发生什么。将来无法与网络外部的人建立连接将是一个问题。
Zoredache

3
@zoredache:我们在这里谈论内部支持。即使现在,只要您不需要外部所有机器都可以,就可以轻松地将IPv4桥接到IPv6。地狱,我们目前的硬件支持。
2011年

2
请记住,自Vista以来,所有Windows盒都是开箱即用的。我们没有理由不让它继续担任执行
吉姆乙

-1

IPv4旨在使每个设备都可以直接在Internet上...直到我们用完地址空间为止。然后,我们花了近20年的时间将其全部锁定。现在,IPv6设计要再次将每个设备直接放置在Internet上……结果将是相同的。我完全同意,NAT是一层安全性,如果没有同等有效或更佳的替代方法,它将不会被放弃。


1
像防火墙一样?
迈克尔·汉普顿

3
NAT 不是安全的。防火墙是为您提供安全性的工具,而不是NAT。防火墙不需要NAT。IPv4和IPv6防火墙都可以在不启用NAT的情况下完美运行,您可以在没有防火墙的路由器上启用NAT,并且防火墙甚至不需要路由。您似乎看不到多合一消费设备。在单个设备中进行NAT,路由和防火墙通常很方便,但是它们是独立的功能。
罗恩·莫平

2
人们为什么仍然这样说?NAT甚至都不是安全性的一层,它并不是设计成一个安全层。这只是地址长度不足的丑陋骇客。这不是大多数攻击者的障碍。否决票,因为这是错误的,无法回答问题。
Falcon Momot '16

-3

不幸的是,这些答案和评论中的绝大多数都有很多不良信息。它是如此的难过,看到领导在这个盲人瞎子在这样一个多产的方式。

NAT不会无处不在,人们会告诉您“哦,NAT,这真是一件可怕的事” ...“哦,NAT,这不过是一种解决方法” ... nasueum如果他们开始使用诸如那,请向真正的专业网络架构师寻求建议,而不是周末的网络扶手椅战士。

您是否需要平衡从Internet到内部服务器的流量负载?好吧,猜想是什么,使用IPv6不能像以前那样做。...除非使用NAT!

是的,它是真的。有人会说,哦,您只是使用DSR / Direct服务器返回负载平衡。但是他们忘了告诉您,您必须放弃1)Cookie插入2)应用程序加速3)端口地址转换

因此,如果要在端口8080上运行内部服务器,但要在端口80上运行内部服务器...哦,很遗憾,IPv6不能做...。除非您使用的是ole NAT好!甚至没有DSR。

然后再加上“吹牛”,人们说“哦,是的,所有IPv6 NAT提议都失败了……感谢天哪”(帝国死于掌声),您知道那是什么意思吗?如果NAT甚至根本不能与IPv6一起使用,那么NAT将是可怕的,因为所有IPv6狂热者本质上都否认对NAT / PAT的需求,而这样做的人们却很不情愿地这样做。好伤心,管理不善

那么,既然事实使您自由了,那么您现在该怎么办,而您又可以超越旅鼠的束缚,尝试使用恐吓手段来强迫您遵守法规?

您购买或继续使用充当网络公共/私有主机的负载均衡器或防火墙。公共端接口托管与您已经拥有的VIP相同的VIP,但如果需要,可提供一个补充的IPv6地址。在Loadbalancer / Firewall层以北的所有内容都是双堆栈IPv4 / IPv6。在Loadbalancer / Firewall的内部接口上,它们都是IPv4,整个内部网络都是IPv4,只要您愿意,它就一直保持这种状态。这只是你的事。Loadbalancer在外部和内部之间进行NAT / PAT ...因为它已经存在并且需要进行全功能的负载平衡,并且因为现在它还解决了外部IPv6问题。

噢,还有一个讽刺的人问:“ NAT有什么单一的安全目的?”

安全是最基本的可用性。在解雇它之前,请考虑一下。

负载平衡器提供了可用性/安全性,无论您使用的IP版本如何,您都必须使用NAT / PAT来正确执行此操作。

关于DSR的引用失败:https : //devcentral.f5.com/articles/the-disadvantages-of-dsr-direct-server-return

th


2
我认为您的回答试图说一个人需要NAT才能拥有一个平凡的负载均衡器,但是显然不是这样,也无法解决这个问题……
Falcon Momot

-4

在内部网络上使用IPv6并不是一个好主意,因为许多传统设备将无法通信。旧复印机/多功能打印机,医疗设备,旧打印机,旧服务器和网络设备。IPv4方案更易于管理imo。


-12

公认的答案是误导的

克里斯S关于NAT的概念是错误的。除了人为地扩展IPv4模式之外,NAT的最佳功能之一就是安全性。NAT是隐藏主机真实IP的层,如果直接连接到Internet,则可能是所有可能的攻击的目标。兴高采烈地谈论摆脱NAT而又不鼓励采取额外的安全措施只是对这个话题的无知。


5
如何准确是NAT的一个安全层?
MDMarra 2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.