缺省值:没有启用NAT。

命令模式:全局配置模式。

说明:静态NAT主要用于那些对需要对外部用户开放的服务,如Web服务器等,它可以把本地地址映射为指定的全局地址。

第一种格式实现的是一对一的NAT映射。第二种格式可实现一对多的映射,即一个全局地址可映射多个内部地址,用端口号区分各个映射。

范例1:

Ruijie(config)#ip nat inside source static 192.168.1.6 200.10.10.2

本例定义了一个内部源地址静态NAT,内部本地地址为192.168.1.6,内部全局地址为200.10.10.2。外网用户只能用200.10.10.2访问这台主机,内网用户只能用192.168.1.6访问这台主机,如果加上permit-inside关键字,内网用户也能用200.10.10.2访问。

范例2:

Ruijie(config)#ip nat inside source static tcp 192.168.1.6 80 200.10.10.2 80
Ruijie(config)#ip nat inside source static tcp 192.168.1.8 80 200.10.10.2 8080

本例定义了两个内部源地址静态NAT,两个服务都是Web服务,内网用户可以用http://192.168.1.6和http://192.168.1.8访问这两个网站,外网用户需要用http://200.10.10.2和http://200.10.10.2:8080访问这两个网站。

 ip nat outside source list

语法:

ip nat outside source list access-list-number pool pool-name

no ip nat outside source list access-list-number

启用外部源地址转换的动态NAT。使用 no 选项可关闭该动态NAT。

参数:

access-list-number:访问控制列表的表号。它指定由哪个访问控制列表来定义源地址的规则。

pool-name:IP地址池名字。该地址池定义了用于NAT转换的外部本地地址。

缺省值:没有启用NAT。

命令模式:全局配置模式。

说明:外部源地址NAT用于有地址重叠的情况。当两个需要互访的私有网络使用了同样的IP地址,或一个私有网络和公有网络使用了同样的IP地址,则产生地址重叠。这时需要把外部全局地址映射为一个本地没有的外部本地地址才能实现互访。

配置外部源地址的动态NAT时,访问控制列表定义的是外部全局地址的格式,IP地址池中定义的是外部本地地址,它应该和内部本地地址没有重叠。

范例:

Ruijie(config)#ip nat pool outp 172.18.1.1 172.18.1.254 netmask 255.255.255.0
Ruijie(config)#access-list 1 permit 192.168.1.0 0.0.0.255
Ruijie(config)#ip nat outside source list 1 pool outp

本例定义了一个外部源地址动态NAT,外部全局地址为192.168.1.*的格式,由access-list 1定义,它和内部地址有重叠。外部本地地址为172.18.1.1~172.18.1.254,由地址池outp定义,这组地址是内部网络中不使用的可路由地址。当从外部来的数据包,源地址是192.168.1.*的格式时,用172.18.1.*的地址替换,再进入内部网络。

相关命令:

ip nat pool 创建一个NAT地址池
access-list 定义访问控制列表

 ip nat outside source static

语法:

ip nat outside source static global-address local-address

no ip nat outside source static global-address local-address

ip nat outside source static protocol global-address global-port local-address local-port

no ip nat outside source static protocol global-address global-port local-address local-port

启用外部源地址转换的静态NAT。使用 no 选项可删除该静态NAT。

参数:

global-address:外部全局地址。是外部主机在外部网络的地址。

local-address:外部本地地址。是外部主机在网络内部表现的IP地址。

protocol:协议。可以是 TCP 或 UDP。

global-port:外部全局地址的服务端口号。

local-port:外部本地地址的服务端口号,它可以和global-port不同。

缺省值:没有启用NAT。

命令模式:全局配置模式。

说明:外部源地址静态NAT用于有地址重叠的情况。第一种格式实现的是一对一的NAT映射。第二种格式可实现一对多的映射,即一个本地地址可映射多个全局地址,用端口号区分各个映射。

范例:

Ruijie(config)#ip nat outside source static 192.168.1.1 172.18.1.6

本例定义了一个外部源地址静态NAT,外部全局地址为192.168.1.1,外部本地地址为172.18.1.6。当从外部来的数据包,源地址是192.168.1.1时,用172.18.1.6的地址替换,再进入内部网络。

 ip nat pool

语法:

ip nat pool pool-name start-address end-address {netmask subnet-mask|prefix-length prefix-length} [type rotary]

ip nat pool pool-name {netmask subnet-mask|prefix-length prefix-length} [type rotary]

no ip nat pool pool-name

定义一个IP地址池。使用 no 选项可删除地址池。

参数:

pool-name:地址池名字。在动态NAT配置命令中用这个名字引用地址池。

start-address:地址块起始IP地址。

end-address:地址块结束IP地址。

subnet-mask:地址块的子网掩码。

prefix-length:使用长度表示的掩码,是掩码的简化写法。

type rotary:表示定义为轮转型地址池,每个地址分配的概率相等。锐捷路由器默认的地址池类型就是轮转型,所以有没有 rotary 关键字都一样,保留此关键字是为了和 Cisco 命令兼容。

缺省值:没有定义地址池。

命令模式:全局配置模式。

说明:第一种格式定义了一个包含地址块的地址池。第二种格式定义的是一个空地址池,之后可以用 address 命令向其中添加一个或多个地址块。

范例1:

Ruijie(config)#ip nat pool np1 200.10.10.1 200.10.10.9 netmask 255.255.255.0

本例定义了一个名为 np 的地址池,地址范围是 200.10.10.1~200.10.10.9,掩码是 255.255.255.0。

范例2:

Ruijie(config)#ip nat pool np2 200.10.10.1 200.10.10.9 prefix-length 24

本例定义的地址池和例1完全相同,只是掩码用的是长度写法。

范例3:

Ruijie(config)#ip nat pool np3 netmask 255.255.255.0
Ruijie(config)#address 200.10.10.1 200.10.10.9
Ruijie(config)#address 201.15.8.17 201.15.8.25

本例先定义了一个空地址池,再用 addess 命令向其中加入了两个地址块。

相关命令:

addess 向NAT地址池中添加地址

 ip nat translation

语法:

ip nat translation 参数名 参数值

no ip nat translation 参数名

配置NAT转换记录的超时时间和转换记录条数限制。使用 no 选项可恢复缺省配置。

该命令有多种用法:

ip nat translation dns-timeout seconds

定义DNS转换记录的超时时间,单位为秒。缺省值为 60 秒。

ip nat translation finrst-timeout seconds

定义TCP连接FIN及RESET后转换记录的超时时间,单位为秒。缺省值为 60 秒。

ip nat translation icmp-timeout seconds

定义ICMP转换记录的超时时间,单位为秒。缺省值为 60 秒。

ip nat translation syn-timeout seconds

定义TCP发出syn后没有收到应答的超时时间,单位为秒。缺省值为 60 秒。

ip nat translation tcp-timeout seconds

定义TCP连接转换记录的超时时间,单位为秒。缺省值为 1 天。

ip nat translation udp-timeout seconds

定义UDP连接转换记录的超时时间,单位为秒。缺省值为 300 秒。

ip nat translation max-entries number

定义NAT转换记录的最大个数。缺省为 30000 条。

ip nat translation pre-user user-ip [number]

指定内网某个用户所允许的最大转换记录数。user-ip时用户的IP地址,如果为 0.0.0.0,则内网所有用户使用相同的条数限制。具体IP的配置优先级高于 0.0.0.0 的配置。如果user-ip后没有给出具体数值,则为300条。缺省情况下,不做限制。

命令模式:全局配置模式。

范例1:

Ruijie(config)#ip nat translation pre-user 0.0.0.0 500
Ruijie(config)#ip nat translation pre-user 192.168.5.112 1000

本例对内网用户转换记录条数做了限制,用户192.168.5.112限制为1000条,其他用户统一限制为500条。

范例2:

Ruijie(config)#ip nat translation icmp-timeout 30

本例把ICMP的NAT转换记录的超时时间设置为30秒。

使用 ip nat outside source list 命令(动态NAT)而不是 ip nat outside source static 命令(静态NAT)的主要区别在于,在(为NAT配置的)路由器检验数据包的转换标准之前,在转换表中没有条目。在上例中,SA为172.16.88.1的数据包(进入Router 2514x的外部接口)符合访问列表1,即 ip nat outside source list 命令使用的标准。因此,在内部网络的包可以与Router 2514w的loopback0接口通信之前,必须从外部网络始发数据包。

本例中需要注意两点:

第一,当数据包从外部传输到内部时,先进行转换,然后检查目的地的路由表。当数据包从内部传输到外部时,先检查目的地的路由表,然后进行转换。

第二,使用上述每条命令时,记录IP数据包的哪个部分被转换很重要。下表给出了一个纲要:

命令

操作

ip nat outsidesource list

  • 转换IP包的源,这些IP包正在从外部传输到内部

  • 转换IP包的目的地,这些IP包正在从内部传输到外部

ip nat inside source list

  • 转换IP包的源,这些IP包正在从内部传输到外部

  • 转换IP包的目的地,这些IP包正在从外部传输到内部

以上表明有多种方法可以转换包。根据您的具体要求,您应该确定如何定义NAT接口(内部或外部

NAT地址转换常用命令详解的更多相关文章

  1. samtools常用命令详解(转)

    转自:samtools常用命令详解 samtools的说明文档:http://samtools.sourceforge.net/samtools.shtml samtools是一个用于操作sam和ba ...

  2. cisco常用命令详解

    cisco常用命令详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.常用命令用法展示 1.命令行模式的来回切换 yinzhengjie>enable #从用户模式切换到 ...

  3. H3C常用命令详解

    H3C常用命令详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 1.关闭后台日志输出 <yinzhengjie>sys [yinzhengjie]undo info- ...

  4. Hexo系列(三) 常用命令详解

    Hexo 框架可以帮助我们快速创建一个属于自己的博客网站,熟悉 Hexo 框架提供的命令有利于我们管理博客 1.hexo init hexo init 命令用于初始化本地文件夹为网站的根目录 $ he ...

  5. 【转载】windbg 常用命令详解

    windbg 常用命令详解 https://blog.csdn.net/chenyujing1234/article/details/7743460 vertarget 显示当前进程的大致信息 lmv ...

  6. DOS常用命令详解

    DOS常用命令详解 dir 列文件名 deltree 删除目录树 cls 清屏 cd 改变当前目录 copy 拷贝文件 diskcopy 复制磁盘 del 删除文件 format 格式化磁盘 edit ...

  7. Kubernetes,kubectl常用命令详解

    kubectl概述 祭出一张图,转载至 kubernetes-handbook/kubectl命令概述 ,可以对命令族有个整体的概念. 环境准备 允许master节点部署pod,使用命令如下: kub ...

  8. Linux常用命令详解上

    Linux常用命令详解上 目录 一.shell 二.Linux命令 2.1.内部命令与外部命令的区别 2.2.Linux命令行的格式 2.3.编辑Linux命令行的辅助操作 2.4.获得命令帮助的方法 ...

  9. hbase shell基础和常用命令详解(转)

    HBase shell的基本用法 hbase提供了一个shell的终端给用户交互.使用命令hbase shell进入命令界面.通过执行 help可以看到命令的帮助信息. 以网上的一个学生成绩表的例子来 ...

随机推荐

  1. [AWS - EC2] 如何向 Amazon Linux 2 实例传输文件,下载文件。How to send/ download files from Amazon Linux 2 Instance

    1. 需要: 安装 WinSCP 2. 需要: PuTTY 生成的ppk格式密钥, 没有的话请移步此文章,完成1, 2, 3步即可. 3. 打开 WinSCP , 如果提示已经有PuTTY配置是否导入 ...

  2. 【杭电多校第七场】A + B = C

    原题: Given a,b,c, find an arbitrary set of x,y,z such that a*10^x+b*10^y=c*10^z and 0≤x,y,z≤10^6. 给你三 ...

  3. springcloud实践(三)之断路器:Hystrix

    服务雪崩效应 基础服务的故障导致级联故障,进而造成了整个分布式系统的不可用,这种现象被称为服务雪崩效应.服务雪崩效应描述的是一种因服务提供者的不可用导致服务消费者的不可用,并将不可用逐渐放大的过程. ...

  4. hive日期函数-广发实战(三)

    近一月客户新增常规里程数与额度比即上个月 第一天(包含)到上个月最后一天(包含) 字段是batch_date==>格式是 yyyymmdd ),'MM'),'-',''); +--------- ...

  5. hive中的 lateral view

    lateral view用于和split, explode等UDTF一起使用,它能够将一列数据拆成多行数据,在此基础上可以对拆分后的数据进行聚合. 一个简单的例子,假设我们有一张表pageAds,它有 ...

  6. POJ-3974-Palindrome(马拉车)

    链接: http://poj.org/problem?id=3974 题意: Andy the smart computer science student was attending an algo ...

  7. Autel MaxiIM IM608:如何更新和一些评论

    MaxiIM IM608是最先进的,因此是与众不同的一种钥匙编程和诊断工具,它将先进的钥匙编程,所有系统医学和先进的服务融合在一个主要基于10.1英寸触摸屏的机械人中.它配备了XP400关键计算机用户 ...

  8. js获取服务器端时间

    第一种: $.ajax({ type:"OPTIONS", url:"/", complete:function(x){ var date = x.getRes ...

  9. [JOI2012春季合宿]Constellation (凸包)

    题意 题解 神仙结论题. 结论: 一个点集合法当且仅当其凸包上的两种颜色点分别连续. 证明: 必要性显然. 充分性: 考虑对于一个不同色三角形\(ABC\),不妨设点\(A\)为白点,点\(B,C\) ...

  10. 原生Js_简易图片轮播模板

    功能:图片自动循环轮播,通过点击“上一张”,“下一张”按钮来控制图片的切换 <!DOCTYPE html> <html> <head> <meta chars ...