GNS3--cisco路由器NAT配置
一、基础
Cisco路由器配置中NAT的主要命令:
静态NAT:
1、指定NAT内部接口
在内网相应接口的接口配置模式下执行:ip nat inside
2、指定NAT外部接口
在外网相应接口的接口配置模式下执行:ip nat outside
3、在内部本地地址与内部全局地址之间建立静态地址转换关系:
ip nat inside source static 内部本地地址 内部全局地址
4、在外部全局地址与外部本地地址之间建立静态地址转换关系:
ip nat outside source static 外部全局地址 外部本地地址
5、
show ip nat translations:显示当前存在的NAT转换信息。
show ip nat statics:查看NAT的统计信息。
show ip nat translations verbose:显示当前存在的NAT转换的详细信息。
debug ip nat:跟踪NAT操作,显示出每个被转换的数据包。
Clear ip nat translations *:删除NAT映射表中的所有内容.
动态地址NAT:
1、指定NAT内部接口
在内网相应接口的接口配置模式下执行:ip nat inside
2、指定NAT外部接口
在外网相应接口的接口配置模式下执行:ip nat outside
3、在全局配置模式下,定义一个标准的access-list规则,声明允许哪些内部本地地址可以进行动态地址转换:
access-list list-number permit 源地址 通配符
其中,list-number为1-99之间的一个任意整数。
4、在全局配置模式下,定义内部全局地址池:
ip nat pool 地址池名 起始IP地址 终止IP地址 netmask 子网掩码
其中,地址池名可以任意设定,但最好有一定的说明意义。
5、在全局配置模式下,定义符合先前定义的access-list规则的IP数据包与先前定义的地址池中的IP地址进行转换:
ip nat inside source list list-number pool 内部全局地址池名
6、no ip nat pool name 删除全局地址池
no access-list access-list-number 删除访问列表
no ip nat inside source 删除动态源地址转换
网络地址端口转换NAPT:
1、指定NAT内部接口
在内网相应接口的接口配置模式下执行:ip nat inside
2、指定NAT外部接口
在外网相应接口的接口配置模式下执行:ip nat outside
3、在全局配置模式下,定义内部全局地址池:
ip nat pool 地址池名 起始IP地址 终止IP地址 netmask 子网掩码
其中,地址池名可以任意设定,但最好有一定的说明意义。
4、在全局配置模式下,定义一个标准的access-list规则,声明允许哪些内部本地地址可以进行复用地址转换:
access-list list-number permit 源地址 通配符
其中,list-number为1-99之间的一个任意整数。
5、在全局配置模式下,定义符合先前定义的access-list规则的IP数据包与先前定义的地址池中的IP地址进行复用地址转换:
ip nat inside source list list-number pool 内部全局地址池名 overload
注:
内部本地地址、内部全局地址、外部本地地址、外部全局地址
ip nat inside/outside针对的是不同方向的流量/数据包。
ip nat inside是指从内网发送的数据包,提取包头的源IP地址,转换为外网地址;ip nat outside是指从外网返回的数据包,提取包头的目的ip地址,转换为内网地址。
inside/outside不是用来区分NAT路由器的内外部接口,而是用来区分需要NAT地址转换的不同方向的流量。inside指内部网络;outside指内部网络需要连接的网络,一般指互联网
二、实例

1、静态nat
基本命令
ip nat inside source static 192.168.1.10 13.0.1.3
ip nat inside
ip nat outside
这里先使用静态nat使pc1能与R2连接通信
先配置pc1和pc2的ip

再配置路由器R1和R2
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#int f0/0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#int
*Mar 1 00:02:12.327: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
*Mar 1 00:02:13.327: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R1(config-if)#int f1/0
R1(config-if)#ip address 13.0.1.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#
*Mar 1 00:02:41.819: %LINK-3-UPDOWN: Interface FastEthernet1/0, changed state to up
*Mar 1 00:02:42.819: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet1/0, changed state to up
R1(config-if)#exit
R1(config)#ip nat inside source static 192.168.1.10 13.0.1.3
R1(config-if)#int f0/0
R1(config-if)#ip nat inside
R1(config-if)#
*Mar 1 00:03:29.095: %LINEPROTO-5-UPDOWN: Line protocol on Interface NVI0, changed state to up
R1(config-if)#int f1/0
R1(config-if)#ip nat outside
R2#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)#int f0/0
R2(config-if)#ip address 13.0.1.2 255.255.255.0
R2(config-if)#no sh
测试



2、动态NAT
使用动态nat使pc2与R2通信
R1(config)#ip nat pool test 13.0.1.10 13.0.1.20 netmask 255.255.255.0
!定义内部全局地址池
R1(config)#access-list 10 permit 192.168.1.0 0.0.0.255
!定义访问控制列表,内部本地地址范围
R1(config)#ip nat inside source list 10 pool test
!建立映射关系
R1(config)#int f0/0
R1(config-if)#ip nat inside !定义内部网络接口
R1(config)#int f1/0
R1(config-if)#ip nat outside !定义外部网络接口
将192.168.1.0/24网段的内部主机动态转换到全局地址13.0.1.10-13.0.1.20之间的ip,内部网络的其他网段(非192.168.1)的主机不允许做NAT
测试

3、PAT
1)静态PAT
R1(config)#ip nat inside source static {UDP|TCP} local-address port global-address port
例:

这里我们将C1的telnet服务映射到13.0.1.3的999端口,来测试一下静态PAT
R3模拟为主机C1,并且开启telnet服务
c1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
c1(config)#no ip routing
c1(config)#int f0/0
c1(config-if)#ip address 192.168.1.2 255.255.255.0
c1(config-if)#no sh
c1(config-if)#
*Mar 1 00:03:16.475: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
*Mar 1 00:03:17.475: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
c1(config-if)#exit
c1(config)#ip def
c1(config)#ip default-g
c1(config)#ip default-gateway 192.168.1.1
c1(config)#end
c1#sho
*Mar 1 00:04:06.223: %SYS-5-CONFIG_I: Configured from console by console
c1#show ip route
Default gateway is 192.168.1.1
Host Gateway Last Use Total Uses Interface
ICMP redirect cache is empty
c1#
!开启telnet
c1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
c1(config)#line vty 0 4
c1(config-line)#login
% Login disabled on line 130, until 'password' is set
% Login disabled on line 131, until 'password' is set
% Login disabled on line 132, until 'password' is set
% Login disabled on line 133, until 'password' is set
% Login disabled on line 134, until 'password' is set
c1(config-line)#password zwish
c1(config-line)#access-list 101 permit ip any any
c1(config-line)#end
R2
R2#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)#int f0/0
R2(config-if)#ip address 13.0.1.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#
*Mar 1 00:06:58.331: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
*Mar 1 00:06:59.331: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R2(config-if)#
R1配置静态PAT
R1#en
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#int f0/0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#int
*Mar 1 00:06:06.983: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
*Mar 1 00:06:07.983: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R1(config-if)#int f1/0
R1(config-if)#ip address 13.0.1.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#
*Mar 1 00:06:27.363: %LINK-3-UPDOWN: Interface FastEthernet1/0, changed state to up
*Mar 1 00:06:28.363: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet1/0, changed state to up
R1(config-if)#exit
R1(config)#ip nat inside source static tcp 192.168.1.2 23 13.0.1.3 999
R1(config)#int f0/0
R1(config-if)#ip nat inside
R1(config-if)#int f1/0
R1(config-if)#ip nat outside
R1(config-if)#exit
这里最重要异步就是将192.168.1.2的telnet服务映射到了13.0.1.3的999端口
最后配置好了,用R2来telenet登陆一下C1,telnet 13.0.1.3 999

成功!
抓个包看一下,源地址和目的地址分别为13.0.1.2和192.168.1.2

2)动态PAT

R1配置
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#int f0/0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#int f1/0
R1(config-if)#
*Mar 1 00:01:11.115: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
*Mar 1 00:01:12.115: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R1(config-if)#int f1/0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
% 192.168.1.0 overlaps with FastEthernet0/0
R1(config-if)#ip address 13.0.1.1 255.255.255.0
R1(config-if)#no sh
R1(config-if)#
*Mar 1 00:05:50.503: %LINK-3-UPDOWN: Interface FastEthernet1/0, changed state to up
*Mar 1 00:05:51.503: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet1/0, changed state to up
R1(config-if)#exit
R1(config)#ip nat pool test 13.0.1.3 13.0.1.3 netmask 255.255.255.0
R1(config)#ac
*Mar 1 00:07:20.143: %LINEPROTO-5-UPDOWN: Line protocol on Interface NVI0, changed state to up
R1(config)#access-list 10 permit 192.168.1.0 0.0.0.255
R1(config)#ip nat inside source list 10 pool test overload
R1(config)#int f0/0
R1(config-if)#ip nat inside
R1(config-if)#int f1/0
R1(config-if)#ip nat outside
R2
R2#conf t
Enter configuration commands, one per line. End with CNTL/Z.
R2(config)#int f0/0
R2(config-if)#ip address 13.0.1.2 255.255.255.0
R2(config-if)#no sh
R2(config-if)#
*Mar 1 00:06:05.027: %LINK-3-UPDOWN: Interface FastEthernet0/0, changed state to up
*Mar 1 00:06:06.027: %LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
R2(config-if)#
pc1和pc2
VPCS[1]> ip 192.168.1.2 192.168.1.1 24
Checking for duplicate address...
PC1 : 192.168.1.2 255.255.255.0 gateway 192.168.1.1
VPCS[1]> 2
VPCS[2]> ip 192.168.1.3 192.168.1.1 24
Checking for duplicate address...
PC2 : 192.168.1.3 255.255.255.0 gateway 192.168.1.1
VPCS[2]> show
NAME IP/MASK GATEWAY MAC LPORT RHOST:PORT
VPCS1 192.168.1.2/24 192.168.1.1 00:50:79:66:68:00 20000 127.0.0.1:30000
fe80::250:79ff:fe66:6800/64
VPCS2 192.168.1.3/24 192.168.1.1 00:50:79:66:68:01 20001 127.0.0.1:30001
fe80::250:79ff:fe66:6801/64
pc1和pc2分别ping R2,发现源地址都是13.0.1.3




GNS3--cisco路由器NAT配置的更多相关文章
- 实验1: Cisco路由器基础配置
实验 1: Cisco路由器基础配置 1. 路由器的运行模式:Router> 用户模式,通常用来查看统计信息,但不能修改路由器的设置.Router# 特许模式,可以查看并修改 ...
- [转] Cisco路由器DNS配置
禁用Web服务 Cisco路由器还在缺省情况下启用了Web服务,它是一个安全风险.如果你不打算使用它,最好将它关闭.举例如下: Router(config)# no ip http server 配置 ...
- Cisco路由器交换机配置命令详解
1. 交换机支持的命令: 交换机基本状态:switch: :ROM状态, 路由器是rommon>hostname> :用户模式hostname# :特权模式hostname(config) ...
- CISCO 过载NAT配置(小型网络)
一.实验涉及技术 vlan(虚拟局域网). svi(三层交换) .nat(网络地址转换).static router(静态路由) 三.实验目的: 通过配置过载NAT从而实现企业内网正常访问公网,PC ...
- 思科(Cisco)路由器策略路由配置详解
策略路由是路由优化的常用方法.在做路由牵引时很多情况都要用到策略路由.我刚刚接触思科这东西,对策略路由的配置还不太熟悉,今天终于配好了,记录一下. 网络拓扑 R2的E1\E2口分别与R3的E1\E2口 ...
- Cisco路由器DHCP配置浅析
enable config terminal (进入配置模式) ip dhcp pool global(配置一个根地址池,global是地址池的名称,你可以采用有意义的字符串来表示) config ...
- cisco路由器配置教程
配置cisco路由器 经过几十年的发展,从最初的只有四个节点的ARPANET发展到现今无处不在的Internet,计算机网络已经深入到了我们生活当中.随着计算机网络规模的爆炸性增长,作为连接设备的路由 ...
- cisco路由器 三层交换机简单环境配置实例(图)
出处:http://www.jb51.NET/softjc/56600.html cisco路由器&三层交换机简单环境配置实例 一.网络拓扑图: 二.配置命令: 1.路由器的配置: inter ...
- Cisco路由器交换机基础配置
交换机配置 交换机基本状态: switch: # ROM状态, 路由器是rommon> hostname> # 用户模式 hostname# # 特权模式 hostname(config) ...
随机推荐
- qt creator源码全方面分析(4-5)
目录 Qt中的字符串 QLatinString 详细介绍 源码 小结 QStringLiteral(str) 详细介绍 源码 小结 Qt中的字符串 Qt中处理字符串最常用的肯定是QString,但是在 ...
- BIO、NIO、AIO的形象比喻
BIO (Blocking I/O):同步阻塞I/O模式. NIO (New I/O):同步非阻塞模式. AIO (Asynchronous I/O):异步非阻塞I/O模型. 先看阻塞和非阻塞的区别, ...
- [poj1741 Tree]树上点分治
题意:给一个N个节点的带权树,求长度小于等于K的路径条数 思路:选取一个点作为根root,假设f(root)是当前树的答案,那么答案来源于两部分: (1)路径不经过root,那么就是完全在子树内,这部 ...
- JS防抖和节流:原来如此简单
一.函数防抖 前端开发工作中,我们经常在一个事件发生后执行某个操作,比如鼠标移动时打印一些东西: window.addEventListener("mousemove", ()=& ...
- Springboot 上传CSV文件并将数据存入数据库
.xml文件依赖配置 <!--csv依赖 --> <dependency> <groupId>org.apache.commons</groupId> ...
- 【雕爷学编程】Arduino动手做(54)---大按键点动模块
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备 ...
- 【雕爷学编程】Arduino动手做(44)---类比霍尔传感器
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...
- 接触Ubuntu的第一周大致总结
VB上安装,很简单,和入门的帮助,man,--help. 基础的分区,FDISK,文件系统,目录 ,LS,cd,文件操作mkdir,rm,cp等,文件查看,cat,tac,less,等,文件查找loc ...
- 我的excel是2003版本的,里边有sheet1、sheet2两个工作表,当使用GetOleDbSchemaTable获取表Schema时,结果是4个,分别为: sheet1 sheet1$ sheet2 sheet2$
原帖地址:http://bbs.csdn.net/topics/310230098 ---------------------------------------------------------- ...
- 201771010128 王玉兰《面象对象程序设计 (Java) 》第六周学习总结
---恢复内容开始--- 第一部分:基础知识总结: 1.继承 A:用已有类来构建新类的一种机制,当定义了一个新类继承一个类时,这个新类就继承了这个类的方法和域以适应新的情况: B:特点:具有层次结构. ...