DHCP与PXE:IP是怎么来的,又是怎么没的?

如何配置 IP 地址?
那如何配置呢?若是有相关的知识和积累,你能够用命令行本身配置一个地址。可使用 ifconfig,也
可使用 ip addr。设置好了之后,用这两个命令,将网卡 up 一下,就能够开始工做了。
使用 net-tools:
$ sudo ifconfig eth1 10.0.0.1/24
$ sudo ifconfig eth1 up
使用 iproute2:
$ sudo ip addr add 10.0.0.1/24 dev eth1
$ sudo ip link set up eth1
你可能会问了,本身配置这个自由度太大了吧,我是否是配置什么均可以?若是配置一个和谁都不搭边
的地址呢?例如,旁边的机器都是 192.168.1.x,我非得配置一个 16.158.23.6,会出现什么现象呢?
不会出现任何现象,就是包发不出去呗。为何发不出去呢?我来举例说明。
192.168.1.6 就在你这台机器的旁边,甚至是在同一个交换机上,而你把机器的地址设为了
16.158.23.6。在这台机器上,你企图去 ping192.168.1.6,你以为只要将包发出去,同一个交换机的另
一台机器立刻就能收到,对不对?
但是 Linux 系统不是这样的,它没你想得那么智能。你用肉眼看到那台机器就在旁边,它则须要根据自
己的逻辑进行处理。
还记得咱们在第二节说过的原则吗?只要是在网络上跑的包,都是完整的,能够有下层没上层,绝对不
可能有上层没下层。
因此,你看着它有本身的源 IP 地址 16.158.23.6,也有目标 IP 地址 192.168.1.6,可是包发不出去,这
是由于 MAC 层还没填。
本身的 MAC 地址本身知道,这个容易。可是目标 MAC 填什么呢?是否是填 192.168.1.6 这台机器的
MAC 地址呢?
固然不是。Linux 首先会判断,要去的这个地址和我是一个网段的吗,或者和个人一个网卡是同一网段
的吗?只有是一个网段的,它才会发送 ARP 请求,获取 MAC 地址。若是发现不是呢?
Linux 默认的逻辑是,若是这是一个跨网段的调用,它便不会直接将包发送到网络上,而是企图将包发
送到网关。
若是你配置了网关的话,Linux 会获取网关的 MAC 地址,而后将包发出去。对于 192.168.1.6 这台机器
来说,虽然路过它家门的这个包,目标 IP 是它,可是无奈 MAC 地址不是它的,因此它的网卡是不会把
包收进去的。
若是没有配置网关呢?那包压根就发不出去。
若是将网关配置为 192.168.1.6 呢?不可能,Linux 不会让你配置成功的,由于网关要和当前的网络至
少一个网卡是同一个网段的,怎么可能 16.158.23.6 的网关是 192.168.1.6 呢?
因此,当你须要手动配置一台机器的网络 IP 时,必定要好好问问你的网络管理员。若是在机房里面,要
去网络管理员那里申请,让他给你分配一段正确的 IP 地址。固然,真正配置的时候,必定不是直接用命
令配置的,而是放在一个配置文件里面。不一样系统的配置文件格式不一样,可是无非就是 CIDR、子网掩
码、广播地址和网关地址。
动态主机配置协议(DHCP)
原来配置 IP 有这么多门道儿啊。你可能会问了,配置了 IP 以后通常不能变的,配置一个服务端的机器
还能够,可是若是是客户端的机器呢?我抱着一台笔记本电脑在公司里走来走去,或者白天来晚上走,
每次使用都要配置 IP 地址,那可怎么办?还有人事、行政等非技术人员,若是公司全部的电脑都须要 IT
人员配置,确定忙不过来啊。
所以,咱们须要有一个自动配置的协议,也就是称动态主机配置协议(Dynamic Host Configuration
Protocol),简称DHCP。
有了这个协议,网络管理员就轻松多了。他只须要配置一段共享的 IP 地址。每一台新接入的机器都经过
DHCP 协议,来这个共享的 IP 地址里申请,而后自动配置好就能够了。等人走了,或者用完了,还回
去,这样其余的机器也能用。
因此说,若是是数据中内心面的服务器,IP 一旦配置好,基本不会变,这就至关于买房本身装修。
DHCP 的方式就至关于租房。你不用装修,都是帮你配置好的。你暂时用一下,用完退租就能够了。
解析 DHCP 的工做方式
当一台机器新加入一个网络的时候,确定一脸懵,啥状况都不知道,只知道本身的 MAC 地址。怎么
办?先吼一句,我来啦,有人吗?这时候的沟通基本靠“吼”。这一步,咱们称为DHCP Discover。
新来的机器使用 IP 地址 0.0.0.0 发送了一个广播包,目的 IP 地址为 255.255.255.255。广播包封装在
UDP 里面,UDP 封装在 BOOTP 里面。其实 DHCP 是 BOOTP 的加强版,可是若是你去抓包的话,很
可能看到的名称仍是 BOOTP 协议。
在这个广播包里面,新人大声喊:我是新来的(Boot request),个人 MAC 地址是这个,我尚未
IP,谁能给租给我个 IP 地址!
**DHCP 协议主要是用来给客户租用 IP 地址,和房产中介很像,要商谈、签约、续租,广播还不
能“抢单”;
DHCP 协议能给客户推荐“装修队”PXE,可以安装操做系统,这个在云计算领域大有用处**服务器

相关文章
相关标签/搜索