一起学DHCP系列(二)三种途径

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jeffyyko.blog.51cto.com/28563/162176

《一起学DHCP》系列第二节。

     和WINS服务类似,DHCP大体上也由两部分组成,DHCP服务器和DHCP客户端。那么相对的,也会有非DHCP客户端。今天这几节先着重讨论在没有DHCP环境下,客户端是如何获取IP地址的。

     说到获取IP地址,我们就有必要先到网络连接的属性里去看一下,那里看是IP地址是根据地哦!  打开一个网络连接的属性,  如下图:

1.jpg

在【常规】选项中,当我们勾选“自动获得…”也就是图中标记为蓝色的选项,那么系统就会认为用户会通过一个外部程序获取IP地址、子网掩码以及DNS等网络信息。如果此时您就一口咬定这里所说的“外部程序”就是DHCP服务器的话,不能说错,但至少不完全。勾选这两项后,意为着客户机获取IP的来源有2个,第一个来源是大家熟知的DHCP服务器,第二个来源是PPP点对点协议。第一个不用怎么解释,可以很容易想到是DHCP,后面还会详细讲解。第二个呢?不急,先说点别的。我们现在家庭普遍使用的网络接入方式,当然肯定不是古老的56k小猫拨号了,而是DSL专线,这其中又以ADSL占大多数。这种网络接入方式以普通电话线路做为传输介质,只要在线路两端加装ADSL设备,通过一定的连接方式就可以上网了。

    OK,问题来了。我们知道,要想上网,必须要有一个IP地址,那么类似这样的电话拨号上网,IP地址从何而来?就是通过自动获取得到的,如何获取??客户端会创建一个拨号程序,然后输入合法有效的用户名和密码然后拨号,服务端接收到拨号请求并初始化连接后,就开始验证用户的身份,一旦身份验证成功,就会从IP地址池中分配一个IP给用户,这样我们就可以上网了。这么一系列的通讯过程就是建立在PPP协议之上,但并非原生的PPP协议,而是经过一些修改的PPPOE协议,即PPP Over Ethernet。回到这个话题上来,当我们选中【自动获得IP地址和DNS服务器地址】后,就会从电信端的拨号访问服务器中获取一个IP地址,严格来说是电信端分配给用户的。显然,大家可以知道这里并非由DHCP服务器分配的地址,只是分配的机制类似而已。但如果客户端并非直接拨号上网,而是通过路由器代为拨号,此时客户端的IP还是来源于DHCP服务器,只是这个服务器内建在路由器内而已。原理都是一样的。

     说了那么一通,是不是有点晕了。。不要紧,稍后我会做个小节,其实非常简单。我们继续看2个红色的框框,我们可以在其中手工设置IP地址和DNS服务器。但,有个很蹊跷的地方,不知道大家注意没有。就是IP地址和DNS并不是成对的。怎么讲呢?我们来做个小测试。当我们选中【使用下面的IP地址】时,在DNS设置区域会自动勾选【使用下面的DNS服务器地址】。如下图:

2.jpg

因为我们已经有自动获取转为手动,同时为了满足客户端的解析请求,就需要设置一个DNS地址。因为DNS会随着IP地址一起被指派的,如果关闭了自动获取IP,显然客户端无法自动获取到DNS地址,只能手工指定。但反之,我们再选择【自动获得IP地址】时,DNS并没有随之变为【自动获得DNS服务器地址】,而还是停留在刚才的状态,此时我们也可以选择【自动获得DNS服务器地址】。如下图:

3.jpg

为什么会这样???到此有人估计要说我无聊了。。。 但我觉得微软这样设计一定有他的道理。

个人觉得可能的原因如下:

1、早期dhcp服务器无支持分配DNS的功能,为了保证最大兼容,在自动获取IP的同时,客户还可以手工设置DNS地址。

2、是为APIPA而准备的

第一个好理解写,第二个等讲到APIPA的时候就好理解了。

什么是APIPA??我们先看网络属性的【备用配置】选项卡。如下图:

4.jpg

在这里有一个【自动专用IP地址】,我感觉写成【自动获取专用IP地址】这样似乎更容易理解些。

这些就是自动获取IP的三种情况,DHCP、PPP和APIPA。

那到底何为APIPA呢?

转自:http://jeffyyko.blog.51cto.com/28563/162176

原创文章,作者:s19930811,如若转载,请注明出处:http://www.178linux.com/1561

(0)
s19930811s19930811
上一篇 2015-03-25 11:05
下一篇 2015-03-25 11:09

相关推荐

  • 跟我一起学man page、history的使用,剖析FHS(文件系统目录标准)

    跟我一起学man page、history的使用,剖析FHS(文件系统目录标准) 描述 从Linux小白鼠成长为高(lao)高(hei)手(shu)的过程中,无论如何都要学会自个儿施法解决问题,法力的高深体现了解决问题的能力,这里的法力指的是在没有互联网的环境下如何使用man page或相关文档找到命令的使用方法和配置文件的修改方法。本文第一部分总结了在Li…

    Linux干货 2016-07-29
  • 启动和内核管理2

    五、自制linux系统     分区并创建文件系统         fdisk /dev/sdb         分两个必要的分区   &n…

    Linux干货 2016-09-18
  • CentOS7口令破解

    一.rd.break方式修改  1.启动时任意键暂停启动      2.按e 键进入编辑模式 将光标移动linux16 开始的行,添加内核参数rd.break 按ctrl-x 启动 3.重新挂载可读可写根目录 :mount –o remount,rw /sysroot 切回根目录: chroot /sysroot 修改…

    Linux干货 2016-11-29
  • N26-第五周

    1、显示当前系统上root、fedora或user1用户的默认shell;[root@localhost ~]# grep -E ‘^(root|fedora|user1)\>’ /etc/passwdroot:x:0:0:root:/root:/bin/bashfedora:x:4002:4002:Fedora Core:/h…

    Linux干货 2017-03-13
  • bash脚本变量的使用

    bash脚本的变量使用详解 变量的类型包括整数、字符串和数组,但在bash脚本编程中不需要指定类型就可以直接赋值,默认均为字符型,其参与运算会自动进行隐式类型转换。 变量的赋值方式为:name='value',其中“=”两边一定不能有空格,如果变量值中包含有空格则需要使用引号引起来,需要注意的是强引用和弱引用的区分。此外变量的赋值也可以引…

    Linux干货 2016-08-15
  • 一起学WINS系列(二)安装、配置

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jeffyyko.blog.51cto.com/28563/159128  此系列第二节:安装服务端、配置客户端。          完整的WINS系统…

    Linux干货 2015-03-25