zoukankan      html  css  js  c++  java
  • 【计算机网络】第四章 网络层(3)

    四.DHCP协议

    1. 如何获得IP地址

    1)静态配置:硬编码

      ·手动配置IP地址、子网掩码、默认网关

      ·手动配置DNS服务器名称及IP地址

    2)动态配置:动态主机配置协议(DHCP

      ·从服务器动态获取参数,即插即用

      ·允许地址重用、在用地址续租

      ·支持移动用户加入网络

    2. DHCP协议

    (1)主机广播DHCP discover(发现报文)

    (2)DHCP服务器利用DHCP offer(提供报文)进行响应

    (3)主机请求IP地址:DHCP request(请求报文)

    (4)DHCP服务器分配IP地址:DHCP ack(确认报文) 

    (5)工作过程示例

     

    (6)在应用层的实现

      ·请求报文封装到UDP数据包中

      ·IP广播 -> 链路层广播(如以太网)

      ·DHCP服务器构造ACK报文:包括分配给客户的IP地址、子网掩码、默认网关、DNS服务器地址

     

    五.NAT

    1. 网络地址转换场景

     

    2. 动机

    1)只需/只能从ISP申请一个IP地址(IPv4地址耗尽)

    2)本地网络设备IP地址的变更,无需通告外界网络

    3)变更ISP时无需修改内部网络设备IP地址

    4)内部网络设备对外界网络不可见,即不可直接寻址,保证安全

     

    3. 实现(16-bit端口号字段可以同时支持60000+并行连接)

    (1)替换:利用NAT IP地址和新端口号替换外出IP数据报的源IP地址和源端口号

    (2)记录:将替换信息存储到NAT转换表中

    (3)替换:根据NAT转换表,将进入内网的IP数据报替换回源IP地址和源端口号

    4. 争议

    (1)路由器应该只处理第三层功能

    (2)违背端到端通信原则,应用开发者必须考虑到NAT的存在(如P2P

    (3)地址短缺问题应该由IPv6来解决

    5. NAT穿透问题:客户不能直接利用内网地址访问服务器,NAT是唯一对外可见的地址

    (1)静态配置NAT,将特定端口的连接请求转发给服务器

    (2)利用UPnP互联网网关设备协议自动配置

      ·学习到NAT公共IP地址

      ·在NAT转换表中,增删端口映射

    (3)中继(如Skype):NAT/外部的客户与中继服务器建立连接,中继服务器桥接两个连接的分组

  • 相关阅读:
    java 闭包(转)
    设计模式之工厂
    java研发工作组环境架设
    [每日一题jQuery] jQuery选择器总结:进一步过滤、同级操作、后代操作
    [工具] 解决sublime text运行javascript console无输出问题
    [工具]web开发时自动刷新网页:liveReload
    [每日一题JS] 正则表达式
    [工具]sublime text2前端开发利器
    |原创|unity 4.3 2D功能SpriteRenderer修改颜色的方法
    unity 获取系统时间
  • 原文地址:https://www.cnblogs.com/zhangyushuqing/p/9827598.html
Copyright © 2011-2022 走看看