静态 IP 与动态 IP:有何区别?

已发表: 2023-06-05
MALIBAL Aon S1 上打开的 Linux 终端
汉娜史崔克 / How-To Geek
动态 IP 地址由您的路由器分配并且可能会更改,而静态 IP 地址是手动配置的并且永远不会更改。 对于大多数情况,动态 IP 地址就足够了。 但是,如果您想远程访问您的家庭网络,静态 IP 地址很有用。

动态 IP 地址是自动设置的,但每次计算机启动时都可能更改。 静态 IP 地址需要手动配置,但总是在重启后仍然存在。 这个比那个好吗?

目录

什么是 IP 地址?
IP 版本 4 和 IP 版本 6
内部 IP 地址
什么是动态 IP 地址?
动态 IP 地址可以更改
外部 IP 地址
什么是静态 IP 地址?
静态与动态 IP 寻址
如何设置内部静态 IP 地址
如何获取外部静态 IP 地址
通常,动态就是您所需要的

什么是 IP 地址?

IP 地址是标识网络上每个设备的数字标签。 网络协议使用每个设备的地址向它们传送网络流量。 最常用的网络协议是 TCP/IP(传输控制协议/互联网协议)。 “IP地址”中的“IP”即由此而来。

每个 IP 地址都必须是唯一的。 当两个设备通过网络通信时,数据由一个设备传输并由另一个设备接收。 在正在进行的双向“对话”中,只要它们需要通信,就会在两个设备之间来回重复。

数据被分解成可管理的块,称为数据包,它们作为短传输序列发送。 每个数据包都标有元数据。 元数据包含数据包的大小、传输中的数据包总数以及序列中数据包的数量等信息。

这允许在接收到数据时重建数据,并允许识别丢失的数据包。

当然,每个数据包都需要标有目标设备的 IP 地址,以便网络交换机和路由器知道将它们发送到哪里。 发送设备的 IP 地址也包括在内,以便接收设备知道要回复谁,或请求重新发送丢失的数据包。

IP 版本 4 和 IP 版本 6

目前有两种 IP 标准在使用。 一个是较旧且更为常见的 IP 版本 4 或 IPv4,另一个是较新的 IP 版本 6 或 IPv6。

IPv6 旨在解决全球 IPv4 地址用尽的问题。 随着连接设备数量的增加,可用 IPv4 地址池会减少。 IPv6 标准将可能地址的数量提高了一个巨大的数量级。

IPv4 地址使用 32 位来描述整个地址,为四个数字中的每一个分配 8 位,范围从 0 到 255。IPv4 IP 地址如下所示:

 192.168.1.24

IPv6 地址使用 128 位来描述地址,将 16 位分配给范围从 0x0 到 0xFFFF (65535) 的 8 个十六进制数中的每一个。 完整的 IPv6 地址如下所示:

 fe80:0e85:0000:0000:0000:12a4:04e0:ff33

可以在删除前导零的情况下写入 IPv6 地址。

 fe80:e85:0:0:0:12a4:4e0:ff33

每个地址一次,可以省略一系列连续的零。

 fe80:e85::12a4:4e0:ff33

IPv4 仍然是最常用的格式。

内部 IP 地址

每个联网设备,无论是使用有线连接还是 Wi-Fi,都有一个 IP 地址。 因为它们用于将网络流量定向到正确的接收设备,所以它们在自己的网络中必须是唯一的。 两个(或更多)具有相同 IP 地址的设备将导致传输失败和丢失数据包的问题。

如何在 Linux 上使用 ip 命令
相关如何在 Linux 上使用 ip 命令

内部 IP 地址用于识别设备和路由本地网络中的网络流量。 它们对其他外部网络(如 Internet)中的计算机不可见。

当私有本地网络上的计算机想要连接到远程计算机(例如 Web 服务器)时,它会将连接请求发送到本地路由器。 路由器代表本地计算机通过 Internet 进行通信。 它代理具有私有内部 IP 地址的本地计算机与远程服务器之间的双向通信。

什么是动态 IP 地址?

动态 IP 地址是由路由器自动分配给设备的地址。 计算机和笔记本电脑在制造时并未内置 IP 地址。 当他们连接到网络时,需要给他们一个 IP 地址。 在大型网络上,这是一项乏味的任务。 某些网络硬件(例如路由器)的默认 IP 地址为 192.168.1.1,因此它们与典型的专用网络设置相匹配,但如果它们与您的网络不匹配,则可以更改这些设置。

什么是 MAC 地址,它是如何工作的?
相关什么是 MAC 地址,它是如何工作的?

然而,烧入每个网络设备的是 MAC(媒体访问控制)地址。 MAC 地址在全球范围内是唯一的。

网络路由器维护 MAC 地址和 IP 地址的列表。 他们查找每个数据包的目标 IP 地址,找到 MAC 地址,然后将数据包发送到该硬件。

动态IP 寻址无需手动为每个设备配置 IP 地址,而是自动管理为网络设备分配 IP 地址的过程。 DHCP(动态主机配置协议)使这种自动化成为可能。

在启用 DHCP 的网络中,加入网络的设备会在网络上发出DHCPDISCOVER信号。 DHCP 服务器(在家庭网络中通常位于您的路由器内部)以DHCPOFFER消息响应。 这提供了设备可以使用的 IP 地址,以及有关网络的其他信息。

如果设备想要使用该 IP 地址,它会向 DHCP 服务器发送DHCPREQUEST信号。 DHCP 服务器以DHCPACK信号响应,验证 IP 地址和设备应使用的其他设置。

动态 IP 地址可以更改

通过这种方式,设备会自动获得一个 IP 地址以及连接到网络并通过网络进行通信所需的所有信息。 但是,它只能获取租约中的 IP 地址。 它不是永久分配给它的。 如果设备想保留 IP 地址,它必须周期性地请求续租。 租期是DHCPOFFER消息中包含的信息的一部分。

通常,设备重新分配相同的 IP 地址是没有问题的。 但是,如果设备关闭并且无法在租约到期之前发出租约续订请求(对于家庭网络,租约期限通常设置为 12 小时),则 IP 地址可以自由分配给不同的设备。 之前使用该 IP 地址的设备在重新启动时会获得不同的 IP 地址。

我们可以使用带有-v (详细)选项的dhclient命令来查看 Linux 计算机和 DHCP 服务器之间的一些通信。

 sudo dhclient -v 

在 Ubuntu Linux 中使用 dhclient -v 命令检查 DHCP 消息

我们被告知计算机正在侦听和发送的 MAC 地址,我们可以看到DHCPREQUESTDHCPACK消息。

相关:如何在 Linux 上永久更改您的 MAC 地址

外部 IP 地址

连接到 Internet 的网络具有由其 ISP(Internet 服务提供商)分配给它们的 IP 地址,称为外部 IP 地址。 这是网络向 Internet 显示的 IP 地址,因此也称为公共 IP 地址。

如何在 Linux Bash 脚本中获取你的公共 IP
相关如何在 Linux Bash 脚本中获取您的公共 IP

因为您的路由器充当您的专用网络和互联网之间的桥梁,它需要一个内部 IP 地址以便您网络上的设备可以访问它,还需要一个外部 IP 地址以便它可以与您的 ISP 设备通信。 您所有的互联网流量都通过这个外部 IP 地址。

您的内部 IP 地址可能以 10、172 或 192 开头。外部 IP 地址可以(实际上)使用所有其他值。

互联网的 DNS(域名服务)与您的专用网络中的 DHCP 列表的功能大致相似,将域名和 URL 转换为 IP 地址,将互联网流量引导至正确的(外部)IP 地址。

相关:用于安全浏览的最佳 DNS 服务器

什么是静态 IP 地址?

静态 IP 地址是永不更改且不受 DHCP 等工具影响的 IP 地址。 具有静态 IP 寻址的设备无论重新启动的频率如何或离线多长时间都会保留其 IP 地址。

静态与动态 IP 寻址

使用 DHCP 自动分配 IP 地址显然很方便。 DHCP 的缺点是 IP 地址的租用。 您不能保证计算机(或任何其他网络设备)在离线后重新启动时会获得相同的 IP 地址。

大多数时候,这无关紧要。 只要您的设备已连接并在网络上运行,并且可以访问 Internet,这通常就是我们所需要的。 但有时您的应用程序需要在计算机或 NAS(网络附加存储)或媒体中心等设备之间进行通信,这些设备最适合使用固定的静态IP 地址。

网络混合使用 DHCP 和静态 IP 寻址是完全可以接受的,而且很常见。 DHCP 用于简化大多数设备的 IP 地址分配,静态 IP 寻址用于特殊情况。

如何设置内部静态 IP 地址

在 Ubuntu 中设置静态 IP 地址非常简单。 第一步是确保您选择和配置的 IP 地址尚未被其他设备使用。 您可以使用ping命令来检查。

如何在 Ubuntu 中设置静态 IP 地址
相关如何在 Ubuntu 中设置静态 IP 地址

选择 IP 地址后,您可以使用ncmli con add命令添加连接,并使用nmcli con mod命令将其设置为静态 IP 地址。 我们提供了详细的分步教程,可引导您完成整个过程。 如果您不想使用命令行,它也涵盖了 GUI 方法。

您也可以在 Windows 10 和 11 计算机上使用静态 IP 地址,当然我们已经为您提供了这方面的指导。

如果您使用 Docker 等容器,则可以为容器化计算机分配静态 IP 地址。

相关:如何将静态 TCP/IP 路由添加到 Windows 路由表

如何获取外部静态 IP 地址

如果没有静态外部 IP 地址,您的路由器的外部 IP 地址在重新启动时可能会发生变化。 在几乎所有情况下,这真的无关紧要。 但是,如果您有在外出时需要访问的自托管服务,则必须使用外部静态 IP 地址。

您的外部 IP 地址由您的 ISP 提供,他们是唯一可以更改其设置的人。 只需支付少量额外费用,您的 ISP 就可以为您分配一个外部静态 IP 地址。

您可以使用外部静态 IP 地址远程访问您的路由器及其背后的专用网络,因为您始终知道您的外部 IP 地址是什么。 域名更容易记住并与他人分享。 您可以购买一个域名并将其指向您的外部静态 IP 地址。

获得相同效果的另一种方法是使用 DDNS(动态域名系统)路由。 通过此设置,您可以将路由器配置为在每次启动或获取新的外部 IP 地址时联系您的 DDNS 提供商。

DDNS 提供商更新您域的域名条目,使其指向新的外部 IP 地址。 进入您域名的所有连接请求都将路由到您当前的外部 IP 地址。

通常,动态就是您所需要的

除非您有特殊情况,否则动态内部和外部 IP 地址就足够了。 只要您的设备有唯一的地址——并且 DHCP 会为您处理——您就没有什么可担心的。

如果您需要保证本地网络上的计算机或其他设备始终具有相同的 IP 地址,请为其配置内部静态 IP 地址。

如果您需要能够远程访问您的网络,请向您的 ISP 付费以获得外部静态 IP 地址,或者使用 DDNS 服务。

相关:如何从任何地方轻松访问您的家庭网络