dhcp

DHCP客户端  : 

       client default port == 68   ;  RFC 2131;   抓包 wireshark(协议bootp is DHCP)
     “bootp and eth.addr == F8:66:F2:F6:c0:3f” 

       # rpm -qa|grep dhcp   // centOS 检查是否安装了DHCP
       // ubuntu 使用busybox中的udhcpc 客户端
              mkdir /usr/share/udhcpc
              cp ./examples/udhcp/simple.script  /usr/share/udhcpc/default.script
              chmod 777 default.script

             sudo busybox udhcpc –i eth6 –s /usr/share/udhcpc/default.script
                         udhcpc: SIOCGIFINDEX: No such device
      // linux 系统自带的dhcp client
             sudo dhclient -r //release ip 释放IP
             sudo dhclient //获取IP   
     // 启动busybox中的DHCP 
              [root@localhost sbin]# ./udhcpc
              udhcpc (v1.18.5) started.......
 

busybox1.1.2中的dhcp客户端工具---udhcpc:定时发送续租协议,更新租用时间。一旦租约到期,服务器不再提供IP,则其调用脚本,重新设置网络参数。
         udhcpc会调用脚本:/usr/share/udhcpc/default.deconfig将ip地址设置为0.0.0.0,即无IP。
dhcp协议与pppoe协议有些类似,都是开始发送广播消息,查找提供服务的服务器。
busybox中还提供了dhcp服务器程序---udhcpd。
  

 

DHCP服务器                  
ubuntu 设置静态IP地址
brian@ubuntu:~$ sudo gedit /etc/network/interfaces

auto lo
iface lo inet loopback

auto eth7                             
iface eth7 inet static          
address 10.3.2.16  
gateway 10.3.2.1      
netmask 255.255.255.0      
network 10.3.2.0
broadcast 10.3.2.255

brian@ubuntu:~$ sudo /etc/init.d/networking restart
 * Reconfiguring network interfaces... 
 
安装 dhcp-3.1.1.tar 后,进行配置: brian@ubuntu:~$ sudo gedit /etc/dhcpd.conf

          Not configured to listen on any interfaces!
                  1.你本机dhcp服务器的ip地址要属于你声明ip段的其中一个网段之中, 否者启动不了
                  2.检查你的主配置文件,有没有错误

启动:brian@ubuntu:~/Desktop$ sudo /usr/sbin/dhcpd
             Internet Systems Consortium DHCP Server V3.1.1......

### DHCP协议详解 DHCP(Dynamic Host Configuration Protocol)是一种用于简化主机连接到互联网过程中的配置管理的协议。通过该协议,客户端可以从服务器自动获取必要的TCP/IP参数,如IP地址、子网掩码、默认网关以及DNS服务器信息。 #### 报文类型及其作用 DHCP定义了多种类型的报文来实现其功能: - **DHCP Discover**: 客户端广播此消息以寻找可用的DHCP服务器[^1]。 - **DHCP Offer**: 当服务器接收到Discover请求后,它会发送Offer响应给客户机提供一个临时分配的IP地址和其他网络参数。 - **DHCP Request**: 如果客户接受所提供的配置,则向特定的DCHP Server发出Request确认所选方案;如果之前已经有一个有效的租约,在续订时也会用到这个消息。 - **DHCP ACK/NACK**: 一旦Server处理完客户的Request之后就会返回ACK表示同意或者NACK拒绝此次申请。 - **DHCP Release/Decline**: 这两个命令允许客户端主动释放当前使用的IP地址或将不再使用的地址通知给服务端[^3]。 - **DHCP Inform**: 主要应用于已知自己所需全部设置但仍需额外信息的情况,比如仅查询域名解析器位置而不改变现有设定。 ### 常见问题解决方案 针对可能出现的问题有如下建议措施: 确保DHCP服务器上的各项配置准确无误至关重要。这涉及到定期审查和调整诸如地址池范围、租赁期限等关键要素[^2]。对于那些至关重要的联网装置而言,考虑采用固定的IPv4地址而非依赖于动态分配机制能够有效降低因重复指派而导致冲突的风险。 ```bash # Example of checking and updating DHCP server configuration on Linux systems. sudo systemctl restart dhcpd # Restart the DHCP service to apply changes immediately. ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值