NAT和DHCP 的区别是什么?
作者:卡卷网发布时间:2025-04-19 11:53浏览数量:27次评论数量:0次
DHCP(动态主机配置协议)和NAT(网络地址转换)是两种完全不同的网络技术,DHCP动态分配IP地址:为局域网(LAN)内的设备自动分配IP地址、子网掩码、网关、DNS等网络配置,避免手动设置的麻烦。NAT地址转换:将私有IP地址(如家庭/企业内网)转换为公有IP地址(互联网可用),使多台设备共享一个公网IP访问外网。
一、DHCP(动态主机配置协议)
当一台计算机首次接入到网络中,需要IP地址才能进行网络访问,IP怎么获得?就用到了DHCP协议。DHCP协议是互联网上广泛使用的协议,它提供了一种机制称为即插即用连网。当一台计算机加入到新的网络中,可以通过DHCP协议获得IP地址,不需要手工分配。
网络中的主机如何通过DHCP获得地址,我们可以分析DHCP客户端首次接入网络中的情况。
DHCP协议采用的是客户服务器的方式,需要地址的计算机作为客户端,向DHCP服务端(路由器、三层交换机等)发送DHCP DISCOVER(发现报文),这个阶段客户端没有IP地址,因此会将报文的源IP设置为全0(0.0.0.0),客户端也不知道DHCP服务器在什么地方,因此发送广播报文,将目的IP设为全1(255.255.255.255)。
DHCP服务器在收到DHCP DISCOVER(发现报文)后,从地址池(地址池和接收DHCP DISCOVER报文的接口同一地址段)中选择一个可用的IP地址,通过DHCP OFFER报文发送给DHCP客户端。
客户端进入选择阶段,如果有多个DHCP服务器向DHCP客户端回应DHCP OFFER报文,DHCP客户端一般只接收第一个收到的DHCP OFFER报文,然后用广播的方式发送DHCP REQUEST,这个报文中包含了客户端想选择的DHCP服务器和客户端的IP地址。
最后进入确认阶段,DHCP客户端收到DHCP ACK报文,会发送免费ARP,探测是否有其他客户端使用DHCP服务器分配的地址。
通过一个DHCP获得地址的示例再来详细看整个DHCP获得地址的过程。采用华为的ENSP模拟,利用一台PC连接路由器,PC作为DHCP客户端,路由器做DHCP服务端,使用wireshark抓包,获得DHCP服务端向DHCP客户端分配IP地址的全过程。拓扑如图所示。
通过抓取数据包,可以看到DHCP的四个阶段。
第一个DHCP DISCOVER阶段,源MAC是PC1的MAC,目的MAC全F,源IP全0,目的地址全1
第二阶段DHCP OFFER阶段,可以看到Your IP address172.16.1.253,即服务器给客户端分配的IP地址。
第三阶段 DHCP REQUEST,Option 50标明客户端使用的地址172.16.1.253。
第四阶段,DHCP ACK,Option1有掩码信息,Option3有网关信息。
二、NAT(网络地址转换)
在互联网中,为每台计算机和其它设备都规定了一个唯一的地址,这个地址就是IP地址。IP地址就像家庭地址,如果要网购,只有正确的地址才能把物品送到我们手中。网络中通过IP地址才可以把数据转发到所想要转发的目的。
IPv4地址有32位,大概有42.9亿个地址,但是目前互联网的用户不断地增多,IPv4地址中的公有地址显得越发短缺,目前解决这个问题用的最多的方式是使用网络地址转换。
使用网络地址转换时,需要理解私有地址的概念。IP地址中有一种分类方法,把IP地址分为私有地址和公有地址。公有地址是由互联网服务提供商(ISP)分配的,可以在全球范围内直接访问互联网的IP地址。每个公有地址在全球范围内都是唯一的,确保设备能够被准确识别和定位。私有地址任何组织和个人都可以使用,但是不能在因特网上通信,只能在内网使用,IP地址中的A、B、C三类地址中预留了一部分地址作为私有地址。
A类:10.0.0.0~10.255.255.255
B类:172.17.0.0~172.31.255.255
C类:192.168.1.0~192.168.255.255
网络地址转换NAT是对数据包中的IP地址进行转换,在私有网络使用私有地址,出口设备部署NAT,配置公有地址,将私有网络转换为公有地址进行对外访问。
下图中给出了在防火墙上进行NAT转换的基本原理。私有网络要访问公有网络,需要通过NAT转换设备(比如:防火墙),将私有地址转换为公有地址,才能访问到公有网络。
PC1要访问互联网上的服务器,发起的数据报:源地址192.168.1.1,目的地址222.172.2.2。数据报经过防火墙设备,使用NAT转换,将私有地址转换为公有地址,改写了访问的源地址,此时数据报变为:源地址187.28.1.1,目的地址:222.172.2.2。服务器收到数据报后,发出应答:源地址222.172.2.2,目的地址187.28.1.1,此时服务器并不知道PC1的私有地址,防火墙收到服务器发送的数据报后,进行地址转换,转换后为:源地址222.172.2.2,目的地址192.168.1.1,发送给PC1。
NAT的类型有很多,比如:静态NAT、动态NAT,我们采用静态NAT的形式配置,使用抓包工具来看NAT转换的过程。
在上述拓扑中,在NAT设备上配置静态NAT。将私有网络中PC1的私有地址192.168.1.1转换公有地址187.28.1.3。
interface GigabitEthernet0/0/2
ip address 187.28.1.1 255.255.255.0
nat static global 187.28.1.4 inside 172.16.1.1 netmask 255.255.255.255
nat static global 187.28.1.3 inside 192.168.1.1 netmask 255.255.255.255
#
PC1发起对服务器的访问,通过抓包可以看到源地址192.168.1.1,目的地址222.172.2.2。
在NAT设备进行NAT转换,可以看到源地址187.28.1.3,目的地址222.172.2.2
在NAT设备看到NAT的会话信息,源地址192.168.1.1转换为了源地址187.28.1.3。
免责声明:本文由卡卷网编辑并发布,但不代表本站的观点和立场,只提供分享给大家。
相关推荐

你 发表评论:
欢迎