IPv4地址耗尽真的有多严重?


163

多年来,新闻界一直在谈论有关现在可用的IPv4地址很少的问题。但是,另一方面,我使用的是服务器托管公司,它很乐意花少量钱提供公共IPv4地址。我的私人互联网连接带有一个公共IPv4地址。

那怎么可能?问题是否像媒体希望我们相信的那样严重?


23
一些公司手头上仍有许多IPv4地址。其他人很少。我必须非常仔细地考虑使用IPv4地址。结果,我有很多仅使用IPv6的计算机。
迈克尔·汉普顿

21
它也使您对ISP愿意避免其他人避免部署IPv6造成的痛苦程度有所了解。
immibis

22
我不会称其为邪恶,但这肯定是痛苦的。话虽如此,但假设Facebook和whatsapp都可以正常工作,大多数消费者可能不会在乎。
Journeyman Geek,

8
@JourneymanGeek好吧,普通消费者并不真正在乎他们不懂的东西。有分布式社交媒体的想法,例如,(因为这使得它很难审查),但没有人在乎这些事情,直到,他们已经采取了掉在地上,他们可以因为NAT的不是。我敢说NAT是我们最终使用集中化Web的原因之一,因为从根本上讲,如果不付钱给别人就无法托管自己的网站。
immibis

15
正如@Azendale指出的那样,游戏服务器托管是一个很大的主机。为什么我不能只运行minecraft_server.exe并将我的地址告诉我的朋友?由于NAT。当然,“消费者”确实确实希望有时运行游戏服务器。
immibis

Answers:


176

这很糟糕。以下是一些示例示例,这些示例说明了我在与消费者ISP对抗IP4地址短缺时所做的第一手经验:

  • 在城市之间反复围绕IPv4区块进行改组,导致短暂的中断和客户的连接重置。
  • DHCP租约时间从几天缩短到几分钟。
  • 允许用户选择是否要在客户内部设备(CPE)上进行网络地址转换(NAT),然后无论如何都要追溯地为每个人打开它。
  • 为已经利用此机会选择退出NAT的客户在CPE上启用NAT。
  • 减少CPE强制执行的同时活动媒体访问控制(MAC)地址数量的上限。
  • 为在注册服务时拥有真实IP地址的客户部署运营商级NAT(CGN)

所有这些都降低了ISP向其客户出售产品的质量。他们为什么要对客户这样做的唯一明智的解释是IPv4地址的短缺。

IPv4地址的短缺导致地址空间的碎片化,存在多个缺点:

如果没有NAT,今天就不可能拥有3700百万个可路由IPv4地址。但是NAT是一种脆弱的解决方案,它为您提供了可靠性较差的连接和难以调试的问题。NAT的层数越多,效果越差。经过二十年的艰苦努力,单层NAT几乎可以正常工作,但是我们已经越过了一点,即单层NAT足以解决IPv4地址短缺的问题。


57
要补充的一件事是,NAT还导致恶意用户影响普通用户,并且通常使IP作为用户区分机制不可靠。例如,由于一个或几个用户的恶意破坏,维基百科几乎阻止了每个卡塔尔用户
IllusiveBrian

9
@IllusiveBrian提出了一个正确的观点。我继承了使用IP地址作为主要标识符的广告定位软件。如今,这还远远不够,必须对其进行大量修改以使其可靠。印度和希腊似乎是受影响最严重的两个国家。我可以看到一个广告每天被同一IPv4击中100次以上,但每次击中可以是一个不同的用户,这取决于其他跟踪方法
Darren H

15
@DmitriySintsov只不过是一个简单的有状态防火墙。如果边缘设备可以进行NAT,则可以进行状态防火墙。
mfinni

15
@DarrenH“使用IP地址作为主要标识符的广告定位软件,并且必须进行大量修改以确保其可靠性。”仅仅因为这个原因就足以保留NAT。
安迪

6
@DarrenH这只是关于不喜欢广告软件的评论,无论您感觉自己的语气如何。
安迪

132

在我们开始用尽IPv4地址之前,我们没有(广泛地)使用NAT。每台连接互联网的计算机都有其自己的全局唯一地址。首次引入NAT时,是从为客户使用/拥有的每个设备给ISP的客户1个真实地址转变为给1个客户1个真实地址。这个问题解决了一段时间(几年),而我们原本应该改用IPv6。而不是切换到IPv6,(大多数)每个人都等待其他人进行切换,因此(大多数)没有人推出IPv6。现在,我们再次遇到相同的问题,但是这次,正在部署第二层NAT(CGN),以便ISP可以在多个客户之间共享1个真实地址。

如果NAT并不糟糕,那么IP地址用尽并不是什么大问题,包括在最终用户无法控制它的情况下(运营商级NAT或CGN)。

但是我认为NAT很糟糕,特别是在最终用户无法控制NAT 的情况下。并且(作为一个工作是网络工程/管理但具有软件工程学位的人),我认为通过部署NAT而不是IPv6,网络管理员将解决地址耗尽的重担从他们的领域转移到了最终用户身上。和应用程序开发人员。

因此(我认为),为什么NA​​T是应当避免的可怕的邪恶之举?

让我们看看我是否可以在解释其中断(以及导致其导致我们已经习惯了以至于我们什至没有意识到它会更好的问题)的问题上做到公义:

  • 网络层独立性
  • 对等连接
  • 资源的命名和位置一致
  • 最佳流量路由,主机知道其真实地址
  • 追踪恶意流量的来源
  • 将数据和控制分为单独的连接的网络协议

让我们看看我是否可以解释每个项目。

网络层独立性

ISP应该只传递第3层数据包,而不关心上面的各层中的内容。无论您是传递TCP,UDP还是更好/更奇特的东西(也许是SCTP?还是比TCP / UDP更好但由于缺乏NAT支持而晦涩的其他协议),您的ISP都不应该关心; 对他们来说,所有这些都应该看起来像数据。

但事实并非如此-当他们实施NAT的“第二波”,即“运营商级” NAT时,并非如此。然后,他们必须要查看并支持您要使用的第4层协议。现在,这实际上意味着您只能使用TCP和UDP。其他协议要么只是被阻止/丢弃(根据我的经验,大多数情况),要么只是转发到使用该协议的NAT“内部”的最后一个主机(我已经看过1个实现此目的的实现)。即使转发到使用该协议的最后一台主机也不是真正的解决方案-两台主机一旦使用它,它就会中断。

我想有一些替代TCP和UDP的协议,正是由于这个问题,这些协议目前未经测试和未使用。不要误会我的意思,TCP和UDP设计出色,令人惊奇的是,它们都能够按比例扩展到我们今天使用互联网的方式。但是谁知道我们错过了什么呢?我已经读过关于SCTP的内容,它听起来不错,但由于NAT而无法使用,因此从未使用过。

点对点连接

这是一个很大的。实际上,我认为最大。如果您有两个最终用户,都位于自己的NAT后面,则无论哪个最终尝试连接,另一个用户的NAT都会丢弃其数据包,并且连接将不会成功。

这会影响游戏,语音/视频聊天(例如Skype),托管您自己的服务器等。

有解决方法。问题在于,这些解决方法要花费开发人员时间,最终用户时间和不便,或服务基础架构成本。而且它们并非万无一失,有时会崩溃。(请参阅其他用户有关Skype中断的评论。)

一种解决方法是端口转发,您可以在其中编程NAT设备以将特定的传入端口转发到NAT设备后面的特定计算机。整个网站致力于如何为所有不同的NAT设备执行此操作。请参阅https://portforward.com/。这通常会浪费最终用户的时间和挫败感。

另一个解决方法是添加对应用程序打孔等功能的支持,并维护不在NAT之后的服务器基础结构以引入两个经过NAT的客户端。这通常会花费开发时间,并使开发人员有可能维护以前不需要的服务器基础结构。

(还记得我所说的关于部署NAT而不是IPv6的问题,将问题的重心从网络管理员转移到了最终用户和应用程序开发人员吗?)

一致的网络资源命名/位置

由于NAT内部使用的地址空间与外部使用不同的地址空间,因此NAT内部设备提供的任何服务都具有多个地址可访问,而正确使用的地址取决于客户端从何处访问它。 。(即使在端口转发工作之后,这仍然是一个问题。)

如果您在NAT内有一个Web服务器,例如在端口192.168.0.23端口80上,并且您的NAT设备(路由器/网关)的外部地址为35.72.216.228,并且您为TCP端口80设置了端口转发,现在可以使用192.168.0.23端口80或35.72.216.228端口80来访问Web服务器。应使用哪个服务器取决于您是在NAT内部还是外部。如果您不在NAT范围内,并且使用192.168.0.23地址,那么您将无法到达预期的位置。如果您在NAT内部,并且使用外部地址35.72.216.228 ,则如果NAT实现是支持发夹的高级实现可能会到达您想要的位置。,但是处理您的请求的Web服务器将看到该请求来自您的NAT设备。这意味着,即使NAT后面的网络中的路径较短,所有流量也都必须通过NAT设备,并且这意味着Web服务器上的日志的使用效率将大大降低,因为它们都将NAT设备列为NAT设备的来源。连接。如果您的NAT实现不支持发夹,那么您将无法实现预期的目标。

一旦使用DNS,此问题就会变得更加严重。突然,如果您想让NAT背后托管的某些东西正常工作,您将想根据谁在询问NAT内部托管的服务地址(AKA跨域DNS,IIRC)给出不同的答案。uck

所有这些都假设您拥有有关端口转发,发夹式NAT和水平分割DNS的知识。最终用户呢?当他们购买消费类路由器和一些IP安全摄像机并希望其“正常工作”时,他们有什么机会完成所有这些设置?

这导致我:

最佳流量路由,主机知道其真实地址

如我们所见,即使使用高级发夹式NAT流量也不会始终通过最佳路径。即使在知识渊博的管理员设置服务器并具有发夹式NAT的情况下,也是如此。(允许的,水平分割的DNS可以在网络管理员的手中实现内部流量的最佳路由。)

当应用程序开发人员创建像Dropbox这样的程序并将其分发给不专门配置网络设备的最终用户时,会发生什么情况?具体来说,当我在共享文件中放入4GB文件,然后尝试在下一台计算机上进行访问时,会发生什么情况?它是在机器之间直接传输,还是我必须等待它通过慢速WAN连接上传到云服务器,然后再等待第二次通过相同的慢速WAN连接下载?

对于幼稚的实现,将使用不位于NAT后面的Dropbox的服务器基础结构作为中介来上载然后下载。但是,如果两台计算机只能意识到它们位于同一网络上,那么它们就可以直接更快地直接传输文件。因此,对于我们的首次尝试,我们可能会询问操作系统该机器具有的IP(v4)地址,然后对照在同一Dropbox帐户上注册的其他机器进行检查。如果与我们在同一范围内,则直接传输文件。在很多情况下这可能会起作用。但是即使那样,仍然存在一个问题:NAT只起作用,因为我们可以重用地址。那么,如果192.168.0.23地址和192.168.0呢?在同一个Dropbox帐户上注册的42个地址实际上在不同的网络上(例如您的家庭网络和工作网络)?现在,您必须重新使用Dropbox服务器基础结构进行调解。(最后,Dropbox试图通过让每个Dropbox客户端在本地网络上广播以希望找到其他客户端来解决该问题。但是这些广播没有穿越您在NAT后面可能拥有的任何路由器,这意味着它不是一个完整的解决方案,尤其是在CGN的情况下。)

静态IP

此外,由于第一次短缺(和NAT浪潮)发生在许多用户连接不总是处于连接状态(例如拨号)时,ISP可以通过在实际连接时仅分配公共/外部IP地址来更好地利用其地址。这意味着当您连接时,您将获得可用的任何地址,而不是总是获得相同的地址。这使得运行您自己的服务器变得更加困难,并且使开发对等应用程序变得更加困难,因为它们需要处理四处移动的对等端而不是固定地址。

混淆恶意流量的来源

由于NAT会将传出连接重写为好像来自NAT设备本身一样,因此所有行为,无论好坏,都被汇总到一个外部IP地址中。我没有看到任何NAT设备默认记录每个传出连接。这意味着默认情况下,过去恶意流量的源只能追溯到它经过的NAT设备。尽管可以配置更多的企业级或运营商级设备来记录每个传出连接,但我还没有看到执行此操作的任何消费者路由器。我当然认为,看看ISP在推出时是否会保留通过CGN建立的所有TCP和UDP连接的日志(以及记录多长时间)会很有趣。需要此类记录来处理滥用投诉和数字千年版权法案(DMCA)投诉。

有人认为NAT可以提高安全性。如果是这样,它将通过模糊来实现。NAT强制执行的默认传入流量下降与具有状态防火墙相同。据我了解,任何能够进行NAT所需的连接跟踪的硬件都应该能够运行有状态的防火墙,因此NAT确实不应该在那做任何事情。

使用第二个连接的协议

诸如FTP和SIP(VoIP)之类的协议倾向于将单独的连接用于控制和实际数据内容。每个执行此操作的协议在其通过的每个NAT设备上都必须具有称为ALG(应用程序层网关)的帮助程序软件,或者通过某种介体或打孔解决该问题。以我的经验,ALG很少更新,并且至少是导致我解决涉及SIP的几个问题的原因。每当我听到有人报告说VoIP因为音频只能以一种方式对他们不起作用时,我立即怀疑某个地方有一个NAT网关丢弃UDP数据包,无法弄清楚该怎么做。

综上所述,NAT倾向于打破:

  • TCP或UDP的替代协议
  • 对等系统
  • 访问NAT后面托管的内容
  • SIP和FTP之类的东西。解决此问题的ALG如今仍会引起随机和怪异的问题,尤其是对于SIP。

从根本上讲,网络堆栈采用的分层方法相对简单而优雅。尝试向刚接触网络的人解释它,他们不可避免地认为自己的家庭网络可能是一个易于理解的好简单网络。在一些情况下,我已经看到这种情况导致了一些非常有趣(过于复杂)的想法,这些想法是由于内部和外部地址之间的混淆而导致的路由工作方式。

我怀疑如果没有NAT,VoIP将无处不在并与PSTN集成在一起,并且使用手机或计算机拨打电话是免费的(您已经付费的互联网除外)。毕竟,当您和我只能打开64K VoIP流并且与PSTN一样好用时,为什么还要为电话付费?如今看来,部署VoIP的第一大问题是通过NAT设备。

我怀疑,如果我们拥有NAT中断的端到端连接能力,那么我们通常不会意识到可以简单得多的事情。人们仍然通过电子邮件(或Dropbox)自己发送文件,因为核心问题是当两个客户端位于NAT之后时需要中介者。


3
@supercat IPv6地址是全局唯一的,但不是平坦的(以支持路由,它需要是分层的)。在我看来,如果我们希望理论上能够与任何两个与Internet连接的主机进行通信,则必须以某种形式提供全局唯一地址。
雅各布

9
@supercat不幸的是,一个长期以来的神话是IPv6仍然没有足够的空间供所有人使用。您可以将/ 48分配给地球上的每个人,但仍有大量剩余空间。要用尽当前分配的资源,2000::/3您将不得不重复该练习超过4,000次!或给每个人一个/ 34。但是/ 48对几乎每个人都足够了,那些需要更多的人可以轻松获得它。即使这还不够,还是有4000::/36000::/3等,可用。我们有很多房间;是时候使用它了。另请参阅RFC 6177
迈克尔·汉普顿

7
@immibis您似乎错过了一些东西。组织不限于获得/ 48或/ 32。他们几乎可以得到任何尺寸的块。它可以是/ 44或/ 40或/ 39或/ 47或其他任何值。你也应该阅读RFC 6177.
迈克尔·汉普顿

4
不幸的是,许多人已开始将NAT用作a脚的安全保护方式,许多设备(例如chromecast和IoT设备)都假定能够连接到它的任何设备都是受信任的设备,因此我见过的每台消费者路由器都会断开与ipv6设备的传入连接。以及一些我见过的方法都无法禁用它,只有常规的端口转发。
Qwertie

14
...好吧,我现在讨厌NAT;如何切换到IPv6?
亚当·巴恩斯

20

在其他答案中没有提到的IPv4耗尽的一个主要症状是,一些移动服务提供商仅在几年前才开始使用IPv6。您有可能已经使用IPv6多年了,甚至都不知道。移动提供商对于Internet游戏来说是较新的,不一定有大量的现有IPv4分配可供借鉴。与电话/ DSL /光纤相比,它们还需要更多的地址,因为您的电话无法与家庭的其他成员共享公共IP地址。

我的猜测是IaaS和PaaS提供商将是下一个,因为它们的增长与客户的实际地址无关。看到IaaS提供商以折扣价仅提供IPv6的服务我不会感到惊讶。


10
我已经看到一些小型提供商提供仅IPv6的VM,并对IPv4收费。
迈克尔·汉普顿

14

不久前,主要的RIR空间不足,无法进行正常分配。因此,对于大多数提供商而言,IPv4地址的唯一来源是他们自己的库存和市场。

在某些情况下,最好拥有专用的公共IPv4 IP,但这并不是绝对必要的。还有一堆已分配但尚未在公共Internet上使用的公共IPv4地址(它们可能已在专用网络上使用,或者可能根本没有使用)。最后,还有一些较旧的网络,其地址分配得比所需的宽松得多。

现在,三个最大的RIR允许在其成员之间以及彼此之间出售地址。因此,我们之间存在着一个市场,在组织中要么拥有自己不使用的地址,要么拥有一方面可以释放费用的地址,而另一方面却确实需要更多IP地址的组织。

很难预测的是,每个价格点将有多少供求关系,因此市场价格将来会做什么。到目前为止,每个IP的价格似乎仍然低得惊人。


AfriNIC仍然有不到/ 8的地址可用,而且我看到非洲以外的许多组织都在抢占这些地址的例子。
迈克尔·汉普顿

7

理想情况下,Internet上的每个主机都应该能够获取全球范围内的IP地址,但是IPv4地址耗尽是真实的,事实上ARIN已经耗尽了其免费池中的地址

每个人仍然可以很好地访问Internet服务的原因在于网络地址转换(NAT)技术,该技术允许多个主机共享公共IP地址。但是,这并非没有问题。


18
我不想知道Napster,Gnutella,八卦,Kazaa,BitTorrent,Kademlia,FastTrack,eDonkey,Freenet,Grokster,Skype,Threema,Spotify等之间浪费了多少工时,资源以及数百万,开发NAT穿透技术。
约尔格W¯¯米塔格

@JörgWMittag更不用说它在2010
。– kasperd

4
事实是您必须首先使用NAT穿孔技术。如果X机和Y机都处于普通连接上,则没有调解器就无法相互通信。讨厌文件同步任务之类的事情。
罗伦·佩希特尔

@kasperd您能详细说明一下“ 2010年12月因Skype失败”吗?我可以发现,由于某些未指明的原因,大量的超节点立即失效。而且看不到这与IPv4地址耗尽有何关系。
ivan_pozdeev '18

5
@ivan_pozdeev超级节点是解决由NAT引起的问题的解决方法。NAT本身是解决IPv4地址不足的一种方法。因此,首先需要Skype使用超级节点的原因完全是IPv4地址的短缺。如果Internet以更合理的速度升级到IPv6,Skype将不需要超级节点,并且不会发生特定的中断。
kasperd '18

5

ISP曾经向公司提供256个IP地址的块。现在,ISP显得很st,给您(一家公司)一个5。回到2003年,您家里的每台PC和连接的设备都有自己的Internet IP地址。现在,电缆/ DSN / Fios路由器具有一个IP地址,并为您家中的所有PC提供了10.0.0.x ip地址。简介:ISP曾经浪费IP地址,现在不再浪费IP地址。


5
早在2003年,家里的每台PC和连接的设备都有自己的互联网IP地址。 ”仅当您支付了第二,第三,第四等费用时
RonJohn '18

2
罗恩·约翰是对的。当有线互联网于1997年进入我的地区时,我是宽带的最早采用者之一。我每月为它支付50美元(美国),而且我清楚地记得他们提供了第二个IP地址,每月额外收取20美元。即使我想要一个,我也不愿意为此付出代价。第二年,当我发现NAT设备时,我的问题解决了。它们没有很多功能(例如用于传入连接的端口转发),但是我解决了我的迫切需求。
查尔斯·伯吉'18

@CharlesBurge我也记得这一点。而且我们看到一些提供商现在也尝试使用IPv6做同样的事情。
凯文·基恩'18

@CharlesBurge:这取决于您的ISP。大约在同一时间,我有一个朋友在亚利桑那州凤凰城的电缆上,他得到了一个完全路由的子网,一个/ 29块,带有8个地址,其中5个可用。我们在上面运行了带有门控的Linux服务器(这是我们的偶然行为),电缆网络实际上与之共享了完整的BGP路由信息。这样,人们将Windows PC和打印​​机以完全开放的方式共享到网络上,使生活变得有趣。
Zan Lynx '18年

哦,是的,我确实记得网络可见性。在“网上邻居”中可以看到我循环中的其他所有人,并且我可以浏览他们拥有的所有共享。
查尔斯·布尔奇'18

5

您已经获得了许多出色的答案,但是我想补充一下尚未提及的内容。

是的,IPv4地址耗尽很糟糕,具体取决于您的测量方式。一些公司仍然拥有大量的IPv4地址,但是我们开始看到诸如运营商级NAT之类的解决方法。

但是当转向IPv6时,许多答案都是错误的。

这是可以帮助解决IPv4地址短缺的技术的列表。每种都有自己的优点和缺点。

  • IPv6

    • 优势:标准化,可在大多数操作系统中使用。
    • 缺点:尽管经常有相反的说法,但是仍然存在严重的安全问题。早在2005年,美国CERT就因IPv6的全球寻址而引起的安全问题提出了警告。IPv6 可以得到适当的保护,但是考虑到消费者路由器的状态,它可能不会发生。
    • 缺点:迁移需要时间,金钱和专业知识。
    • 缺点:许多消费级设备存在严重缺陷。例如,许多D-Link路由器通过简单地转发所有流量而不提供任何防火墙来支持IPv6 。

另一个考虑因素:即使IPv6在今天完全流行,由于人们将使用很长一段时间的旧设备,淘汰IPv4仍需要20年左右的时间(我仍然看到Windows 2003服务器和Windows XP工作站偶尔!更不用说所有不支持IPv6的打印机和相机以及IoT小工具了。

  • CGNat:
    • 优势:在客户所在地不变地工作。
    • 缺点:仅支持出站连接。
    • 缺点:可能不支持某些协议。

最终,CGNat还远远不够。也许IPv6会流行起来,但是我们很有可能最终会看到国家级NAT,或者类似的东西。

当前,作为顾问,我经常不得不向我的客户指出他们暴露在IPv6上(这要感谢Teredo)。下一个问题始终是:“修复该问题需要花费多少钱?” 然后说“封锁它要花费多少?如果关闭它,我们会损失什么?” 猜猜每次都会做出什么样的决定。

底线:回答您的问题,是的,IPv4耗尽是真实的。我们将看到许多应对它的机制。IPv6可能会或可能不会最终成为方程式。

明确一点:我并不是说我喜欢这种情况。我希望IPv6能够成功(而且我希望看到IPv6的许多改进)。我只是看着目前的情况。


2
与任何NAT一样,CGN仅适用于TCP,UDP和ICMP,不适用于其他传输协议。它还破坏了许多应用程序层协议。NAT是尝试扩展IPv4的丑陋解决方案,它的实用性已经过时了。
罗恩·莫平

3
@ supercat,IP数据包没有DNS名称。那将是一个不同的协议。NAPT仅可使用TCP,UDP和ICMP传输协议,而其他协议则不能。许多应用程序和应用程序层协议不能与NAPT一起使用,它们需要在丑陋的NAPT骇客之上进行丑陋的骇客。IP的前提是每个终端设备都有一个唯一的地址,并且围绕该地址设计了许多协议。IPv6解决了该问题以及IPv4的一些缺点。
罗恩·莫平

3
@supercat,如果真的如此简单,那么就没有理由将庞大的IPX网络安装基础转换为IPv4。您可以在IPX和IPv4之间执行相同类型的操作,并且完成了一段时间,但这只是一个麻烦。
罗恩·莫平

1
@supercat-因此,为了支持这样的网络,我们需要放弃现有的标准,并重写所有直接连接到地址的现有应用程序吗?这听起来对我来说不是一个好方法。
Jules '18

2
@KevinKeane我并不惊讶于2010年的一台古老的消费类路由器存在IPv6问题。30秒钟的Google搜索结果浏览表明,几年前他们已经解决了该问题。
迈克尔·汉普顿

-1

NAT是当IPv6成为一个主意时才发生的事情,当时它才成为现实,并且IP地址分配已成为一个现实问题(有人记得他们当时基本上是出于要求而发放C类的吗?),而现实世界在此期间需要一个解决方案。

NAT不足以用于物联网。如果物联网将要发生,那么它将与IPv6一起发生。物联网的性质与拨号世界的工作方式更加紧密一致,不同的是,同时会连接多个数量级的设备。


2
通过快速搜索,NAT似乎最初是在1994年5月由RFC 1631定义的。IPv6在1995年12月发布的RFC 1883中被定义为提议的标准(沿标准轨道还很遥远)。我不知道您在“想法”和“现实”之间划清界限的位置,但是几乎可以肯定,在RFC 1883发布之前,测试平台中已经存在大部分有效的 IPv6代码。与此相比,常被引用的RFC 1918于1996年2月发布,距最初的IPv6 RFC 几个月之后
CVn

2
如果没有实施标准,那么标准就毫无用处,消费者或企业愿意为此付出代价。测试平台和概念验证在市场上不起作用。我对NAT的观点是,可行的实现已进入市场(并因此获得了关注),因为现有的硬件(到那时为止已经是其中的一种)都使用了IPv4。因此,更多的是“问题已解决,现在就让我们处理更紧迫的问题”。
哈维尔

2
@Xavier:64K是NAT设备甚至无法达到的上限。首先,所有低于1024的低端端口均受到限制。而且大多数NAT将自身限制在大约20K端口的高端口范围内。当然还有内存问题:即使到了今天,我们还是因为某些人试图同时打开10,000个TCP连接而使路由器跌落并重置。看着你,Google Home。
Zan Lynx '18年

1
@KevinKeane-因为吸引物联网的部分原因是能够从外部连接到您的设备。目前,由于配置NAT是设备制造商不想给消费者带来的痛苦,因此我们通常通过设备制造商提供的外部“连接”服务来做到这一点,但这并不是长期可持续的。它所需要的只是一家知名的制造商倒闭,突然间,每个人都会警惕依靠其设备继续工作。从长远来看,这将是唯一可行的方法,如果大多数人都拥有IPv6。
Jules '18

1
@supercat-也许吧,但是到目前为止,与通用的IPv6可用性相比,发生的可能性似乎更低……
Jules

-4

整个IPv4地址问题相当复杂。您可能会发现某些文章报道它已经用尽,而另一篇文章则谈到大量多余(从未使用过)的地址正在从一方出售给另一方。问题是,为什么缺少这些服务的人(发达国家的新兴地区和农村地区)无法使用这些服务?

以下是我们偶然冒险进行的一项研究的结果。它仅利用原始的IPv4协议RFC791和长期保留但几乎未使用的240/4地址块将IPv4池扩展256M。我们已经向IETF提交了一份名为EzIP(易于IPv4的语音)的提案草案:

https://tools.ietf.org/html/draft-chen-ati-adaptive-ipv4-address-space-03

基本上,EzIP方法不仅可以解决IPv4地址短缺问题,而且可以在很大程度上缓解IPv4域范围内网络安全漏洞的根源,并为Internet开辟新的可能性。实际上,该方案可以在需要的地方“秘密”部署到偏远地区。这些应该减轻在相当长的时间内部署IPv6的紧迫性,并使IPv4地址的交易市场无效。

任何想法或评论将不胜感激。

安倍晋三(2018-07-15 17:29)


3
ServerFault不是IETF WG。
womble

-5

老实说,我认为这没有人们想象的那么糟糕。是的,也许在某些地方,但是因为地址不足而没有那么多。这是因为它们都是所有人。也许是我的所在地,但是在过去七年左右的时间里,我已经为许多中小型企业完成了IT工作,而您所谈论的所有事情通常只是标准设置。除非您的设备很笨拙,否则首先很容易,否则首先要对网络进行不良设置。

就个人而言,我对NAT没问题。一般来说,它是附加的保护层。至少他们要么必须通过一个额外的设备,要么找到一种间接劫持我的连接的方法。就运行服务器而言,除非您为此付费,否则通常不属于您和/或与您的ISP违反合同。当然,您可以做到,他们可能不会打扰您,但是可以。

端口转发以及所有这些并不完全复杂。现在,也许有些设备不容易配置,但这不是因为IPv4。仅仅因为它无处不在,它仍然提供了最大的兼容性。

如今,实际上没有人需要自己发送电子邮件,并且向Drop-box或Google Drive或其他百万种其他类似服务发送东西并不是火箭科学,也不是慢事。我的意思是一切都同步。您将其放在文件夹中。除非您像我一样讨厌,否则您将通过ssh / sftp来完成所有操作(好的不是所有操作)。而且,如果出于某些原因您确实想运行自己的服务器,则云托管很便宜-我有一个专用的虚拟服务器,可以在ssd上运行linux。带宽太快了。它的启动速度比我键入向上箭头并按Enter的速度快。且可扩展整个安装每月花费5至10美元,带有免费备份且无电费。

确实不需要对等网络解决方案。如今,即使是大多数多用户游戏,也都可以通过中介服务器进行设置,交互和设置。另一方面,如果我在这篇文章中所读内容完全正确,那么当/当IPv6起飞时,IT将会人满为患且价格便宜。甚至手机也在接近类似光纤的速度。或至少是电缆。

如果您确实运行内部服务器,并且需要在网络内部或外部使用相同的域名打它,则始终可以使用基于Linux的路由器和dnsmasq或主机中的任何自定义条目来欺骗其地址。文件,以将您重定向到本地地址(如果在内部)。

真的,我不认为让每台设备都直接拥有自己的地址并在网上公开浮动是不现实的。如果有人想在攻击你时自卑,那就不管了。但是,如果您只是坐在开放的微风中,那么您就是坐鸭。不,我每天都会使用IPv4和NAT。但是很好,在那里。

Anywa,现在睡着了……也许还有更多话要说,但是明天我会检查一下,以防错过任何事情。我敢肯定还有更多。


12
嗯,这实际上是可取的,因为连接更稳定,速度更快,互联网更便宜(ISP不必维护其NAT服务器,每个区域/城市的IP块分配以及在特定的高峰时段进行改组)。您知道当移动用户从一个蜂窝塔跳到另一个蜂窝塔并获得新的IP时,websocket令人困惑吗?要使它保持运行状态,需要大量补偿代码,精力和精力。您的答案听起来像是,这座塔可能缺少其基础,但尚未倒塌,所以很好。
Tschallacka

11
您对NAT和安全性有一些误解。请阅读RFC 4864
Karl Bielefeldt

4
以这个速度,它将超过一代人。IPv6 今年已经20岁了
迈克尔·汉普顿

4
RFC 2460于1998年12月发布。在此之前,它已发布了多个部分,并且已经有了各种测试平台。大约在1995 12月的RFC 1883中提出了大致当前形式的IPv6 。因此,您可以说IPv6的历史甚至超过20年。但是每个人都将RFC 2460视为IPv6成熟到可以实施的地步。
迈克尔·汉普顿

6
顺便说一句,当我在谈论这个话题时,您应该意识到,已经存在仅IPv6的游戏平台,例如Xbox One。具有IPv4而不具有IPv6连接性的Xbox One会建立自己的Teredo隧道以到达IPv6 Internet,这当然会带来延迟和可靠性的损失。当Teredo隧道被认为不如典型的消费者IPv4连接不可靠时,IPv4的状态就很难过。
迈克尔·汉普顿
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.