内网IP和公网IP的区别

本文详细介绍了内网IP与公网IP的概念,解释了它们之间的区别,并深入探讨了NAT(网络地址转换)技术如何实现IP地址共享。文中还解释了互联网上每台计算机都有唯一IP地址的原因,以及NAT技术如何解决IP地址不足的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(转载自陈志伟博客http://chenzhiwei.net/2010/09/intranet-ip-and-public-ip-networks/志伟博客

什么是内网IP:

一些小型企业或者学校,通常都是申请一个固定的IP地址,然后通过IP共享(IP Sharing),使用整个公司或学校的机器都能够访问互联网。而这些企业或学校的机器使用的IP地址就是内网IP,内网IP是在规划IPv4协议时,考虑到IP地址资源可能不足,就专门为内部网设计私有IP地址(或称之为保留地址),一般常用内网IP地址都是这种形式的:10.X.X.X、172.16.X.X-172.31.X.X、192.168.X.X等。需要注意的是,内网的计算机可向Internet上的其他计算机发送连接请求,但Internet上其他的计算机无法向内网的计算机发送连接请求。我们平时可能在内网机器上搭建过网站或者FTP服务器,而在外网是不能访问该网站和FTP服务器的,原因就在于此。

什么是公网IP(外网IP):

公网IP就是除了保留IP地址以外的IP地址,可以与Internet上的其他计算机随意互相访问。我们通常所说的IP地址,其实就是指的公网IP。互联网上的每台计算机都有一个独立的IP地址,该IP地址唯一确定互联网上的一台计算机。这里的IP地址就是指的公网IP地址。

怎样理解互联网上的每台计算机都有一个唯一的IP地址:

其实,互联网上的计算机是通过“公网IP+内网IP”来唯一确定的,就像很多大楼都是201房间一样,房间号可能一样,但是大楼肯定是唯一的。公网IP地址和内网IP地址也是同样,不同企业或学校的机器可能有相同的内网IP地址,但是他们的公网IP地址肯定不同。那么这些企业或学校的计算机是怎样IP地址共享的呢?这就需要使用NAT(Network Address Translation,网络地址转换)功能。当内部计算机要连接互联网时,首先需要通过NAT技术,将内部计算机数据包中有关IP地址的设置都设成NAT主机的公共IP地址,然后再传送到Internet,虽然内部计算机使用的是私有IP地址,但在连接Internet时,就可以通过NAT主机的NAT技术,将内网我IP地址修改为公网IP地址,如此一来,内网计算机就可以向Internet请求数据了。

什么是NAT(Network Address Translation,网络地址转换):

网络地址转换(NAT,Network Address Translation)属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用于各种类型Internet接入方式和各种类型的网络中。原因很简单,NAT不仅完美地解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机。

虽然NAT可以借助于某些代理服务器来实现,但考虑到运算成本和网络性能,很多时候都是在路由器上来实现的。

随着接入Internet的计算机数量的不断猛增,IP地址资源也就愈加显得捉襟见肘。事实 上,除了中国教育和科研计算机网(CERNET)外,一般用户几乎申请不到整段的C类IP地址。在其他ISP那里,即使是拥有几百台计算机的大型局域网用户,当他们申请IP地址时,所分配的地址也不过只有几个或十几个IP地址。显然,这样少的IP地址根本无法满足网络用户的需求,于是也就产生了NAT技 术。

### 区分内网IP地址公网IP地址的方法 区分内网IP公网IP的核心方法是基于IP地址的**范围定义****网络可达性**两个维度进行判断。 #### 基于IP地址范围判断 内网IP地址(也称为私有IP)具有固定的地址段范围,这些地址不会在互联网上被唯一分配。常见的私有IP地址范围包括: - **Class A**:`10.0.0.0 ~ 10.255.255.255`(即 `10.0.0.0/8`) - **Class B**:`172.16.0.0 ~ 172.31.255.255`(即 `172.16.0.0/12`) - **Class C**:`192.168.0.0 ~ 192.168.255.255`(即 `192.168.0.0/16`) 如果一个设备的IP地址落在上述范围内,则可以判定其为内网IP;否则,属于公网IP[^2]。 例如: - `192.168.1.10` 属于内网IP - `10.0.0.5` 属于内网IP - `172.16.10.100` 属于内网IP - `8.8.8.8` 是Google提供的公共DNS服务器IP,属于公网IP #### 基于网络可达性判断 公网IP具有全局可达性,可以在互联网中被其他设备直接访问。而内网IP仅在本地局域网内部有效,无法通过互联网直接访问。例如,用户A用户B各自在家中的局域网中都使用了 `192.168.1.10` 的IP地址,这两个IP不会冲突,因为它们分别位于不同的内网环境中,并通过各自的公网IP与外部通信[^3]。 若想从外部访问某个内网IP对应的设备,通常需要通过NAT(网络地址转换)或端口映射等技术实现转发。 #### 使用命令行工具辅助判断 可以通过以下方式查看本机IP地址并判断其类型: ##### 查看局域网IP(Windows/Linux/Mac) ```bash # Windows系统 ipconfig | findstr "IPv4" # Linux/macOS系统 hostname -I ``` 输出结果如 `192.168.1.10` 表示内网IP。 ##### 获取公网IP(跨平台) ```bash curl https://api.ipify.org ``` 该命令将返回当前设备的公网IP地址,如 `1.2.3.4`。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值