参考链接:http://www.qingsword.com/qing/745.html

  视频链接:

一、什么是NAT?

  NAT --- Network Address Translation  也就是所谓的网络地址转换。这是为了解决ipv4地址不够用而产生的一种技术。原理是把私有地址转换成公有地址与外界通信。私有地址如下:

  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,PAT

二、拓扑图的建立

  大家自己看着拖,路由器型号是1841,有Serial串行口就行。每个端口的ip配置如图所示。

三、静态NAT

静态NAT就是一对一的NAT,内部有多少私有地址需要和外部通信,就要配置多少外网IP地址与其对应。

配置路由器R1为静态NAT

/*配置内网网关接口*/
R1(config)#int fa 0/
R1(config-if)#ip add 192.168.1.1 255.255.255.0
/*这个接口是内网接口,需要配置成NAT对内接口*/
R1(config-if)#ip nat inside
R1(config-if)#no shut /*配置与ISP相连的外网接口*/
R1(config-if)#int s /0/0
R1(config-if)#ip add 12.1.1.1 255.255.255.0 /*配置成NAT对外接口*/
R1(config-if)#ip nat outside
R1(config-if)#no shut
R1(config-if)#exit /*配置静态转换条目,每个内网IP需要和一个外网IP对应*/
R1(config)#ip nat inside source static 192.168.1.2 12.1.1.20
R1(config)#ip nat inside source static 192.168.1.3 12.1.1.30

配置路由器R2

R2(config)#int s //
R2(config-if)#ip add 12.1.1.2 255.255.255.0
R2(config-if)#no shut /*在R2上开启ICMP调试*/
R2#debug ip icmp
//ICMP packet debugging is on

最后,我们来测试静态NAT,用PC1 ping一下路由器2看看结果

/*使用192.168.1.2去Ping路由器2*/
PC1> ping 12.1.1.2 /*
* R2上的ICMP调试输出显示,echo reply的目的地址是12.1.1.20,
* 说明R1上的静态NAT是成功的,成功将PC1的私有IP转换成了公网IP。
*/

在R1上查看NAT地址转换表

R1#show ip nat translations
Pro Inside global Inside local Outside local Outside global
--- 12.1.1.20 192.168.1.2 --- ---
--- 12.1.1.30 192.168.1.3 --- ---

四、动态NAT

动态NAT是在路由器上配置一个外网IP地址池,当内部有计算机需要和外部通信时,就从地址池里动态的取出一个外网IP,并将他们的对应关系绑定到NAT表中,通信结束后,这个外网IP被释放,可供其他内部IP转换使用,这和DHCP租约IP有相似之处。

在路由器1那里改一下配置代码

/*
* 配置外网地址池,poolname1是这个地址池的自定义名称,
* 外网地址池范围从12.1.1.20-12.1.30,11个可用于转换的IP地址,
* 子网掩码24位。
*/
R1(config)#ip nat pool poolname1 12.1.1.20 12.1.1.30 netmask 255.255.255.0 /*
* 设置一个ACL来允许哪些内网IP被转换,
* 这里是192.168.1.0/24网段都允许被转换。
*/
R1(config)#access-list permit 192.168.1.0 0.0.0.255 /*开启动态NAT,允许ACL 1中的私有地址转换成poolname1中的外网IP*/
R1(config)#ip nat inside source list pool poolname1

在ping的时候打开路由器2可以看消息

五、PAT

这是最常用的NAT技术,也是IPv4能维持到今天的最重要原因之一,它提供了一种多对一的方式,对多个内网IP地址,边界路由可以给他们分配一个外网IP,利用这个外网IP的不同端口(不同的端口对应不同的内网IP)和外部进行通信。

在路由器1上配置

*配置允许转换的内部地址范围*/
R1(config)#access-list permit 192.168.1.0 0.0.0.255 /*ACL1中允许的私有IP地址将会共用R1的s0/0接口外网IP地址*/
R1(config)#ip nat inside source list interface s / overload
R1(config)#end

NAT—网络地址转换的更多相关文章

  1. NAT 网络地址转换

    NAT  网络地址转换(Network Address Translation) NAT(Network Address Translation,网络地址转换)是1994年提出的. 属接入广域网(WA ...

  2. CCNA学习 NAT网络地址转换

    CCNA基础 NAT网络地址转换 在计算机网络中,网络地址转换(Network Address Translation,缩写为NAT),也叫做网络掩蔽或者IP掩蔽(IP masquerading),是 ...

  3. NAT网络地址转换模拟过程

    原理图,如图1 图1 以下为配置NAT网络地址转换的实验: eNSP模拟图,如图2 图2 Step1.给路由器的每个接口赋予一个地址,如图3,图4 图3 图4 AR1和AR2中添加路由表项,如图5,图 ...

  4. [译] NAT - 网络地址转换(2016)

    [译] NAT - 网络地址转换(2016) Published at 2019-02-17 | Last Update 译者序 本文翻译自 2016 年的一篇英文博客 NAT - Network A ...

  5. iptables做nat网络地址转换

    iptables做nat网络地址转换. 0. 权威文档 http://www.netfilter.org/documentation/HOWTO/NAT-HOWTO-6.html e文好的直接跳过本文 ...

  6. NAT网络地址转换技术

    NAT网络地址转换技术 目录 一.NAT概述 1.1.概述 1.2.NAT 的应用场景 二.NAT的类型及配置命令 2.1.静态NAT 2.2.动态NAT 2.3.Easy IP 2.4.NATP 2 ...

  7. firewalld 防火墙 nat 网络地址转换

    目的:实现以下效果 一. 准备环境 @1 三台虚拟机 @2  client 端 ip  192.168.1.2      server端   两块网卡 , ip 分别是 192.168.1.1   和 ...

  8. NAT网络地址转换的原理--笔试答题版

    最早接触NAT是在做网络工程师的时候,NAT是做网络工程师必需会的知识点和技能,后来在面试运维的时候也经常被用到,在运维的某些知识点当中也会被引用到,如LVS当中. 为什么需要NAT(网络地址转换)? ...

  9. Nat网络地址转换

    Nat中的术语 -------------------------------------------------------------------------------------------- ...

随机推荐

  1. MathExam第二次作业

    第二次作业:MathExam 一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 20 30 • ...

  2. PHPCMS之 列表和内容页

    上一篇随笔中降到了一些相似的语法可以来后台管理网页的内容,下面就是关于列表的管理 加入一级栏目中有几个有二级菜单的,那么就可以把相应的界面建立一个副本,然后修改里面栏目的一些属性 {pc:conten ...

  3. SDPA: Toward a Stateful Data Plane in Software-Defined Networking

    文章名称:SDPA: Toward a Stateful Data Plane in Software-Defined Networking 发表时间:2017 期刊来源:IEEE/ACM Trans ...

  4. HDU 4529 郑厂长系列故事——N骑士问题 状压dp

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4529 郑厂长系列故事--N骑士问题 Time Limit: 6000/3000 MS (Java/O ...

  5. java equals()方法的注意事项

    1.在写代码的时候,我们有时候需要判断两个相同类的对象的值是否全部相等,很多人想到的就是equals()方法,但是equals方法真的是可以比较吗?其实equals方法比较的并不是两个对象的值,它只是 ...

  6. Java面试&编写程序:使子线程循环10次,紧接着主线程循环100次,来回50次

    package com.cwcec.test; public class TraditionalThreadCommunication { /** * @param args */ public st ...

  7. [学习]Windows server 使用控制台时容易卡死的解决方法

    公司使用Windows server 下面的 cmd 命令行 控制台打开某一个 bat 文件的方式 进行后台使用.. 但是经常发现在winserver 2016 时 遇到卡死的情况, 今天中午我再进行 ...

  8. iptables 开放端口

    #iptables -A INPUT -p tcp --dport 5000 -j ACCEPT #service iptables save

  9. .NET 切面编程 PostSharp

    目录 概念 实现方式 .Net平台的切面实现 PostSharp示例 概念 Aspect-Oriented Programming(AOP):想想OOP是不是有些熟悉,AOP翻译过来的意思就是面向切面 ...

  10. Dubbo学习(二) Dubbo 集群容错模式-负载均衡模式

    Dubbo是Alibaba开源的分布式服务框架,我们可以非常容易地通过Dubbo来构建分布式服务,并根据自己实际业务应用场景来选择合适的集群容错模式,这个对于很多应用都是迫切希望的,只需要通过简单的配 ...