当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > Linux DHCP协议实现过程

Unix/Linux
Linux管理员手册(4)--内存管理
开始进入Linux的知识问答
TCP/IP基础----为Linux做准备(1)
怎样用linux拨号上网
Linux 下文件的压缩、打包与解开
Linux操作系统下的浏览器举要
Linux中的字型(FONTS)设定
用FIPS为LINUX分区
Squid -- Linux下的一个优秀代理服务器软件使用详解
基于Linux的目录服务实现
动手制做自己的Linux启动盘(1)
如何为Linux添加软件详解
LINUX的引导过程
关于Linux下编写和编译程序的几个问题
中文BluePoint Linux 1.0RC 版安装介绍(二)
怎样让你的Linux使用起来更像Windows
Linux下无线上网设置方法
Linux系统下架设CS服务器的完美方法
优化Linux系统硬盘的七个实用技巧
在Linux操作系统中如何截获系统调用

Unix/Linux 中的 Linux DHCP协议实现过程


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-16   浏览: 44 ::
收藏到网摘: n/a

我特别喜欢Linux启动的时候屏幕上一行一行的提示。它把系统正在干的所有事情都告诉了我们,不像Windows,自检完了就给个进度条,背后干啥都不让我们知道。

  DHCP协议部分实现过程如下

  ①:DHCP 服务器被动打开 UDP 端口 67,等待客户端发来的报文。

  ②:DHCP 客户从 UDP 端口 68发送 DHCP 发现报文。

  ③:凡收到 DHCP 发现报文的 DHCP 服务器都发出 DHCP 提供报文,因此 DHCP 客户可能收到多个 DHCP 提供报文。

  ④:DHCP 客户从几个 DHCP 服务器中选择其中的一个,并向所选择的 DHCP 服务器发送 DHCP 请求报文。

  ⑤:被选择的 DHCP 服务器发送确认报文DHCPACK,进入已绑定状态,并可开始使用得到的临时 IP 地址了。

  书面上的文字怎么说我们都会觉得有点晦涩,虽然这个解释其实已经非常明了了。

  不过前几天启动linux的时候,我注意到了这个小细节,linux启动过程中把这个步骤一步一步在屏幕上输出,我觉得能让我们看的更直观,就截了个图,呵呵。

  如下图:

  Linux操作系统启动界面揭秘DHCP协议实现过程

  这个图里面,我上面说的从第2步到第5步都非常明了(第一步是服务端的,我们看不到),端口,MAC,状态这些都清楚的标明了。

  DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 4 //第2步,发送DHCP发现报文

  DHCPOFFER from 192.68.116.254 //第3步,收到DHCP提供报文

  DHCPREQUEST on eth0 to 255.255.255.255 port 67 //第4步,发送DHCP请求报文

  DHCPACK from 192.168.116.254 //第5步,收到DHCP确认报文DHCPACK

  bound to 192.168.116.128 -- renewal in 826 seconds //已绑定,826秒应该是0.5T,也就是IP租用期的一半,到时间就再次发送请求更新租用期

  done.

  Linux真是个好东西。