NAT
NAT(Network address translation)网络地址翻译。
在以下一些场景需要使用:
1、 节省地址(私有IP转公有IP,避免私有IP冲突)
2、 使相同地址之间互访(总公司和分公司之间)孙淳主演的电视剧
3、 外网访问内网的时候保证安全性
4、 更换ISP时不需要重新编址
5、 使用单个IP支持负载均衡
NAT与代理服务器区别:
NAT优点:透明、简单
缺点:很多技术不适用NAT(数字签名、组播、动态路由、己亥杂诗的诗意DNS域的迁移、BOOTPTALK潍坊怎么读NTALKSNMPNETFLOW
不支持TCP协议分段。
代理服务器优点:利于管理、杀毒、缓存加速、。
缺点:使用困难、成本、首次访问很可能延迟很长。
1、
NAT的几种地址
Inside local 网关内部设备的私有地址
Inside global 网关连接外部的公网地址
Outside local 外网的主机地址
Outside global连接网关公网地址的地址
发数据包的流程:
1 源包的源IP和目的IP分别为[inside local outside global]
2 发送到网关,先查路由表,如果有路由条目去往此目的IP,并且需要NAT,那么就去做NAT的翻译
3 按照NAT转换。源IP和目的IP[inside global outside global]。然后通过ISP传导目的地。
4 如果目的地回包的话,源听音乐的软件IP和目的IP[outside global inside global]发回网关。
5 收到包的时候先查看是否有NAT的翻译表项。然后把inside global 翻译成insidelocal。则源IP目的IP就是[outside global inside local]
6 再查网关是否有此路由。如果有则需要发到目的地。
Cisco的路由器,出去的时候先查路由表,后查NAT。回来的时候先转换,再查路由表。
ASANAT和路由器的NAT正好相反。
香水保质期2、
静态NAT(一对一转换)
蒋瑶嘉背景
在转换的过程中,inside local inside global只能有一个。
Outside接口下:ip nat outside
Inside接口下:ip nat inside
命令:ip nat inside source static [inside local] [inside global]
如果一个网关连接AB两个公司,需要NAT建立他们的沟通,那么他们就没有内外网之分了。可以使用以下命令:
连接A的接口:ip nat enable
连接B的接口:ip nat enable
命令 ip nat source static [A IP] [B IP]
这样的话 show ip nat translations 就没有表项了
以上两种方法不能混用,否则会失败。
转换项后还有一些参数:
R1(config)#ip nat inside source static 1.1.1.1 2.2.2.2 ?
  extendable  Extend this translation when used
用于连接到多ISP。在不输入此参数,1.1.1.1 只能映射到2.2.2.2
R1(config)#ip nat inside source static 1.1.1.1 3.3.3.3
% 1.1.1.1 already mapped (1.1.1.1 -> 2.2.2.2)
R1(config)#ip nat inside source static 1.1.1.1 2.2.2.2 extendable
R1(config)#ip nat inside source static 1.1.1.1 3.3.3.3 extendable
如果在后面跟上此参数,就可以了。
  mapping-id  Associate a mapping id to this mapping
状态化NAT
  no-alias    Do not create an alias for the global address
做特殊的DNS解析。如果是两个运营商连接,在联通内部的主机使用本运营商的DNS做解析,也可以使用连接的电信的DNS做解析。此参数就是确定到底应该用那个DNS服务器做解析。此种情况不常用。
当一个外网服务器,通过ISP回包的给内网的一个获得了公有IP的服务器的时候,需要对公司网关的MAC地址做ARP的解析,此时需要公司网关的外网接口具有代理ARP的功能,但是有的外网的接口没有开放代理ARP的功能,那么就需要此参数。
  no-payload  No translation of embedded address/port in the payload
  redundancy  NAT redundancy operation
  route-map  Specify route-map
  vrf        Specify vrf
  <cr>
3、 动态NAT
Inside local inside global 转换数量需要相等。与静态NAT不一样的在于,可以是动态的指定映射的地址,而静态NAT是固定的映射。
和静态NAT一样可以使用 ip nat inside/outside  或者 ip nat enable
命令:ip nat inside source list/route-map x interface/pool
定义NAT地址池命令:ip nat pool xxx [start-ip] [end-ip] netmask/prefix-length
如果转换项里面不包含要转换的地址,则会显示不可达。
此时如果开启debug 会显示send-self 失败。
地址池的扩展命令:
GW(config)#ip nat pool thinkmo 100.1.1.10 100.1.1.20 prefix-length 24 ?
  accounting  Specify the accounting