如何配置IP地址
  使用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
    
如果在同一网段的电脑,却把IP配置成了192.168.1.6(1号)和16.156.23.6(2号),那么两台机器一定无法通信。
    2号向1号发包
        在IP层,它有源IP16.158.23.6,目标IP192.168.1.6但是包发不出去,因为MAC层没填
        但自己的MAC地址知道,但目标MAC无法得知。Linux判断IP,只有在同一网段,才会发送ARP请求获取目标MAC
        如果是跨网段的,Linux不会直接将包发送到网络上,而是会发送到网关
        若配置了网关,Linux会获取网关MAC,然后发出包。但对于1号来说,虽然目标IP是它,但MAC地址不知它,它是不会收包的。
        真正配置IP时,一定不是直接用命令配置的,而是放在一个配置文件里的。
        那么跨网段调用中,是如何获取目标IP 的mac地址的?是从源IP网关获取所在网关mac,然后又替换为目标IP所在网段网关的mac,最后是目标IP的mac地址。
        
    
    
DHCP(Dynamic Host Configuration Protocol)动态主机配置协议
        如果是数据中心的服务器,IP一旦配好,基本不会变,DHCP则只是给你临时分配个IP ,相当于租房。
 
 
    解析DHCP的工作方式
        1.DHCP Discover:新机器加入一个网络,“吼”
            DHCP是 BOOTP的增强版
        2.DHCP Offer:网络管理员配置的DHCP Server 会给新人提供IP,并保留
        
        3.如果有多个DHCP Server,新机器会收到多个DHCP Offer,它会选择其中一个,并发送一个DHCP Request广播数据包。
        4.DHCP Server 接收到新机器的DHCP request后,会广播返回一个DHCP ACK的消息包。
预启动执行华景(PXE)
    像数据中心如何给上百台机器安装操作系统呢?
    操作系统启动首先启动BIOS(basic input ouput system),这是一个很小的系统,读取硬盘的MBR启动扇区,启动GRUB,GRUB加载内核、加载作为跟文件系统的initramfs文件,最后启动内核,初始化整个操作系统。
 
    安装操作系统的过程在BIOS启动后,因为没有安装操作系统之前,链扇区都没有,整个过程叫做与气动执行环境PXE(Pre-boot Execution Environment)
    PXE可以使计算机通过网络启动的协议,协议分为client和server两端,PXE client在网卡的ROM中,当计算机启动时,BIOS把PXE client调入内存执行,并显示出命令菜单,经用户选择后,PXE client将放置在远端的操作系统通过网络下载到本地运行。
    PRE客户端启动后可以从DHCP  Server获得自己的IP和PXE服务器的IP。
    要想使用PXE,DHCP Server是需要配置的,next-server 指向PXE的服务器,也要配置初始启动文件filename。
    
     ddns-update-style interim;
ignore client-updates;
allow booting;
allow bootp;
subnet 192.168.1.0 netmask 255.255.255.0
{
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option time-offset -;
default-lease-time ;
max-lease-time ;
range dynamic-bootp 192.168.1.240 192.168.1.250;
filename "pxelinux.0";
next-server 192.168.1.180;
}
    
    
    具体执行过程如下图
    相当于DHCP协议给客户推荐“装修队”PXE,来安装系统。
    
    PXE协议可以安装操作系统,但如果每次重启都要安装操作系统,很麻烦,如何使得安装一次操作系统后后面就正常启动呢?
    进入BIOS设置页面,有一项PXE Boot to LAN,若设置为Enabled则表示计算机从网络启动,从PXE服务端下载配置文件和操作系统内核进行启动;若设置为Disabled则表示从本地启动,启动动BIOS后,会去寻找启动扇区,如果没有安装操作系统,就会找不到启动扇区,这个时候就启动不起来。
 

4.DHCP与PRE的更多相关文章

  1. PXE+Kickstart+DHCP+TFTP实现无人值守安装操作系统

    PXE+Kickstart+DHCP+TFTP实现无人值守安装操作系统 PXE + Kickstart PXE的工作流程及配置文件 Kickstart的配置文件 Linux安装大致可以分为2个阶段 第 ...

  2. kickstart+ftp+tftp+dhcp+PXE

    ##########yum less install.log #看安装log yum install system-config-kickstart* -y yum install tftp* -y ...

  3. dhcp、tftp及pxe简介

    DHCP: 全称:Dynamic Host Configuration Protocol  动态主机配置协议 DHCP配置内容: IP/Netmask Gateway DNS Server bootp ...

  4. 华为HCNP实验 DHCP配置

    HCNP实验 DHCP配置 学习目的 1.掌握ip pool的配置方法2.掌握DHCP服务器的配置方法3.掌握DHCP客户端的配置方法4.掌握DHCP中继的配置方法5.掌握DHCP Snooping的 ...

  5. Microsoft Windows Server DHCP

    Microsoft Windows Server DHCP DHCP IP地址第一个来源是DHCP服务器,第二个来源是PPP点对点协议(ADSL为PPPOE);DHCP是Dynamic Host Co ...

  6. 协议森林16 小美的桌号(DHCP协议)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 转载请先与我联系. DHCP协议用于动态的配置电脑的网络相关参数,如主机的IP地址,路由器出口地址.DNS域名服务器地 ...

  7. 获取 dhcp IP 过程分析 - 每天5分钟玩转 OpenStack(91)

    前面我们已经讨论了 DHCP agent 的配置以及 namespace 如何隔离 dnsmasq 服务,本节将以 cirros-vm1 为例分析获取 DHCP IP 的详细过程. 在创建 insta ...

  8. dhcp协议交互报文

    DHCP共有八种报文,分别为DHCP Discover.DHCP Offer.DHCP Request.DHCP ACK.DHCP NAK.DHCP Release.DHCP Decline.DHCP ...

  9. 7、二种 为二个不同的子网配置DHCP服务器(中继代理服务器)

    环境如下:        (参考之前,保证二个子网可以互相ping通) 虚拟机vm1        192.168.170.3                    VMnet8 (NAT模式) 虚拟 ...

随机推荐

  1. XPath Helper使用教程

    下载地址 百度网盘下载密码:yuuv下载完成后选择保留 安装 在导航栏中输入chrome://extensions:将.crx文件拖拽到扩展程序页面中,勾选已启用按钮. 使用 重启浏览器,快捷键CTR ...

  2. Spring Cloud配置中心搭建(集成Git)

    1. 在Github(或其他)创建配置中心仓库bounter-config-repo,然后在仓库创建两个配置文件:simon.properties.susan.properties,链接如下: htt ...

  3. MongoDB基础一篇就够了

    MongoDB linux安装MongoDB Windows安装MongoDB 查看当前数据库名称 db 查看所有数据库名称 列出所有在物理上存在的数据库 show dbs 切换数据库 如果数据库不存 ...

  4. C#冒泡法排序源码

    如下内容内容是关于C#冒泡法排序的内容,应该对码农有一些用途. int[] myArray = new int[] { 10, 8, 3, 5, 6, 7, 4, 6, 9 }; for( int j ...

  5. ansible小技巧

    出现带'u'的 unicode编码, 在python里 .encode()回去,尤其是经过shell处理的,最好在shell中使用jinja2来处理一下 最好这种情况在shell模块使用jinja2的 ...

  6. C++一个类对象的大小计算

    计算一个类对象的大小时的规律: 1.空类.单一继承的空类.多重继承的空类所占空间大小为:1(字节,下同): 2.一个类中,虚函数本身.成员函数(包括静态与非静态)和静态数据成员都是不占用类对象的存储空 ...

  7. Hbase API 简单封装

    >>>>>>>>>>>>>>>>>>>>>>>>> ...

  8. HeadFirst学习笔记-2.观察者(Observer)模式

    认识观察者模式 我们用报纸和杂志的订阅为例来介绍: 报社的业务就是出版报纸. 向某家报社订阅报纸,只要他们有新报纸出版,就会给你送来.只要你是他们的订户,你就会一直收到新报纸. 当你不想再看报纸的时候 ...

  9. 小程序-canvas在IOS手机层级最高无法展示问题

    要求的效果: 正面: 背面: 在开发者工具 利用css 和定位实现了一个版本 .topBox.on { transform:rotateY(180deg); } .topBox { position: ...

  10. Codeforces 1015F Bracket Substring AC自动机 + dp

    Bracket Substring 这么垃圾的题怎么以前都不会写啊, 现在一眼怎么就会啊.... 考虑dp[ i ][ j ][ k ][ op ] 表示 已经填了 i 个空格, 末尾串匹配到 所给串 ...