NAT协议详解

NAT协议

简介

私有IP地址的定义极大程度的缓解了IPv4地址紧缺的问题。
私有IP地址可以在本地局域网、私有网络内部随意使用,但是这些地址在公网上是不可被路由的,因此私有IP地址无法直接访问公网。
NAT网络地址转换技术能够将数据包中的IP地址进行转换

私有地址空间

  • A类私有地址:10.0.0.0 -10.255.255.255
  • B类私有地址:172.16.0.0 -172.31.255.255
  • C类私有地址:192.168.0.0 -192.168.255.255

    NAT工作机制

    名词介绍

  • 内部本地地址:请求数据时,NAT转换前的地址
  • 内部全局地址:请求数据时,NAT转换后的地址
  • 外部本地地址:响应数据时,NAT转换前的地址
  • 外部全局地址:响应数据时,NAT转换后的地址

    静态NAT

    Static NAT,静态NAT,用于将内部本地地址(私有IP)与内部全局地址(公有IP)进行一对一的映射。缺点是需要每一个内部IP地址需独占一个宝贵的公网IP地址。即,如果某个合法IP地址已经被NAT静态地址转换定义,即使该地址当前没有被使用,也不能被用作其它的地址转换。而且这种方式是静态手工创建的NAT映射,可扩展性不高
    这种方法主要用在内网中存在需要对公网提供服务的服务器的场景,类似的例子有WEB服务器、邮件服务器、FTP服务器等。
    Static NAT支持IP对IP的映射,以及端口对端口的映射。

    基于地址池的源地址转换

    基于地址池的源地址转换(一对一)是一种动态NAT,其实也是一对一的映射关系。将公网地址放置在一个地址池中,在需要对外出数据包的源地址进行转换时,从地址池中取出一个公网地址供该私有地址专用,并形成NAT映射表项。
    当已占用一个公网地址的用户在一定时间内没有数据传输时,该公网地址资源被收回到地址池中,供其他用户使用。
    这种方式的NAT不会对数据报头部中的端口地址进行转换。

    PAT端口映射地址转换

    也称为端口地址转换(Port Address Translation,PAT),也即对数据包的源地址和端口均进行转换,通过这种转换,可以使多个内部本地地址同时共享同一个公网地址,通过IP+端口的方式来识别不通的源,也就是多对一的映射。
    对于只申请到少量IP地址甚至只有一个合法IP地址却经常有很多用户同时要求上网的情况,这种转换方式非常有用。这种地址转换方式真正意义上缓解了IPv4地址紧缺的问题。在各种网络中被广泛采用。

    NAT配置

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    # 静态NAT配置
    ip nat inside source static local-ip global-ip # 创建映射条目
    ip nat inside # 指定接口为inside
    ip nat outside # 指定接口为outside
    show ip nat translations# 查看nat映射
    # PAT配置
    ip nat inside source static tcp local-ip port global-ip port # 创建映射条目
    ip nat inside# 指定接口为inside
    ip nat outside# 指定接口为outside
    show ip nat translations # 查看nat映射
    # 基于地址池的配置
    Router(config)# ip nat pool namestart-ip end-ip {netmasknetmask|prefix-lengthprefix-length}
    Router(config-if)# access-list acl-numpermit source[source-wildcard]
    Router(config-if)# ip nat inside source list acl-numpool name
    Router# clear ip nat translation * # 清除所有动态匹配项
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!

请我喝杯咖啡吧~

支付宝
微信