路由器重温——NAT配置管理2

配置静态NAT

静态NAT可以实现私网IP地址和公网IP地址的固定一对一映射,基本的配置思想就是配置用户私网IP地址与用于NAT地址转换的公网IP地址之间的一对一静态映射表项。

①配置静态地址映射
②(可选)使能DNS Mapping
③(可选)使能NAT ALG功能
④(可选)配置NAT过滤方式和映射模式
⑤(可选)配置两次NAT
⑥(可选)配置NAT日志输出
⑦(可选)配置NAT地址映射表项老化时间

一、配置静态NAT地址映射

配置静态地址映射就是配置私网IP地址与公网IP地址的一对一映射表项,可在系统视图下为所有NAT出口全局配置,也可在NAT出接口视图下仅为该接口配置。

在系统视图下全局配置静态NAT映射

system-view
nat static protocol {tcp | udp} global global-address global-port inside host-address [host-port] [vpn-instance vpn-instance-name] [netmask mask] [description description]  
nat static protocol {tcp | udp} global interface loopback interface-number global-port [vpn-instance vpn-instance-name] inside host-address [host-port] [vpn-instance vpn-instance-name][netmask mask] [description description]  
nat static [protocol {protocol-number | icmp | tcp | udp} ] global { global-address | interface loopback interface-number} inside host-address [vpn-instance vpn-instance-name][netmask mask] [description description]  
interface interface-type interface-number     
键入NAT出接口(必须是三层接口,但不能是Loopback和NULL接口)
nat static enable

上述三个nat是三选一配置,配置从私网IP地址到公网IP的一对一映射。global-address指定NAT地址映射表项中的公网IP,host-address指定NAT地址映射表项中的私网IP,global-port指定NAT地址映射表项中提供给外部访问的服务的端口号,不配置则表示端口号为零,即任何类型的服务都提供,host-port指定NAT地址映射表项中内部主机提供的服务端口号,如果不配置,则和global-port参数值所指定的端口号一致。netmask指定静态NAT网络掩码,这里不是映射地址中的子网掩码,仅用来指定可建立的地址映射表项数(最多255个),如果仅一个IP地址之间的映射,则静态NAT网络掩码为255.255.255.255,如果一个子网(一定是24位子网掩码)的全部映射,则静态NAT网络掩码为255.255.255.0。interface loopback interface-number指定公网IP地址为对应编号的Loopback的接口IP地址。

在接口视图下配置NAT静态映射

system-view
interface interface-type interface-number
nat static protocol {tcp | udp} global {global-address | current-interface} global-port inside host-address [host-port] [vpn-instance vpn-instance-name][netmask mask] [acl acl-number] [description description]  
nat static protocol {tcp | udp} global interface interface-type interface-number  global-port  [vpn-instance vpn-instance-name] inside host-address [host-port]  [vpn-instance vpn-instance-name][netmask mask] [acl acl-number] [description description]  
nat static [protocol {protocol-number | icmp | tcp | udp} ] global { global-address | current-interface | interface interface-type interface-number} inside host-address [vpn-instance vpn-instance-name][netmask mask] [acl acl-number] [description description]
  

acl acl-number参数指定控制在出接口下应用NAT静态地址转换的NAT应用的ACL编号。current-interface指定以当前接口IP地址作为公网IP地址。interface interface-type interface-number指定以指定接口IP地址作为公网IP地址。

配置静态NAT时,其中的global-addresshost-address必须保证和所有设备现有地址没有重复,包括设备接口地址、用户地址池地址,以避免冲突

通过上面的配置解释,突然明白所谓公网地址,应该就是类似配置了一些Loopback接口地址。

二、配置DNS Mapping

内网用户可以通过NAT使用外网的DNS服务器访问外网的服务器,但如果内网用户通过外网的DNS服务器访问内网服务器时会失败。因为来自外网的DNS解析结果是内网服务器对外宣称的公网IP地址,并非内网服务器真实的私网IP地址。所以,如果没有内网的DNS服务器,而且又有使用域名访问内网服务器的需求,就要求企业内网用户必须使用外网的DNS服务器来实现域名访问,就得配置DNS Mapping功能。

在配置静态地址转换时配置DNS Mapping,可以指明“域名-公网IP-公网端口-协议类型”映射表项。当DNS解析报文到达NAT设备时,NAT设备会根据DNS Mapping建立的映射表项中的公网域名对应的公网IP查找静态地址表项,得到公网IP地址对应的私网IP,再用该私网地址替换DNS的解析报文数据部分的内部服务器公网IP并转发给用户。但DNS报文必须与NAT ALG结合使用,否则仍不能正常穿越NAT

system-view
nat dns-map domain-name global-address global-port {tcp | udp}   
配置域名到公网IP地址、端口号、协议类型的映射。
nat alg dns enable

三、静态一对一NAT配置示例:

对端运营商侧地址为202.10.1.1/24。

1、基本配置思路

仅配置一条一对一的静态NAT地址转换配置。最基本的配置就是要求在系统视图或出接口视图下配置静态地址转换表(同样需要在NAT设备上配置到达Internet的缺省路由)。

2、具体配置

①配置各接口IP地址

<Huawei>system-view
[Huawei]sysnameRouter
[Router]interface gigabitethernet 2/0/0
[Router-GigabitEthernet2/0/0]ip address 202.10.1.2 24
[Router-GigabitEthernet2/0/0]quit
[Router]interface ethernet 1/0/0
[Router-Ethernet1/0/0]ip address 192.168.0.1 24
[Router-Ethernet2/0/0]quit

②配置出接口GE2/0/0一对一的静态NAT映射表项

[Router]interface gigabitethernet 2/0/0
[Router-GigabitEthernet2/0/0]nat static global 202.10.1.3 inside 192.168.0.2 netmask 255.255.255.255
[Router-GigabitEthernet2/0/0]quit

③配置到达Internet的缺省路由,下一跳为运营商侧IP地址202.10.1.1

[Router]iproute-static 0.0.0.0 0.0.0.0 202.10.1.1

配置好后,可在Router上执行display nat static查看地址池映射关系

eNSP试验:

AR1:

从Client访问Server

想修改一下,看看netmask的效果,结果:

将内网192.168.0.1改为192.168.0.254,nat出接口的IP由202.10.1.3改为202.10.1.254,对端改为202.10.1.253,默认路由修改后

将netmask改为255.255.255.128,可用:

netmask改为255.255.255.254,只有两个

Client2的地址没有转换,修改其地址为1或3

为1时,没有转换,为3时,转换了,也许netmask是这样的:我的理解是从202.10.1.3到192.168.0.2,然后是202.10.1.4到192.168.0.3一直同步增加下去。

如果是255.255.255.255,就是一对一的静态映射表项,如上面配置中202.10.1.3与192.168.0.2映射;
如果是其他的,即不是单独一条映射,内网就是从配置的内网地址开始往下延伸n个地址,如这里的254是有两个,即192.169.0.2和3,所以私有地址1和4及以后不转换,但是公网地址配置的是202.10.1.3,抓包看转换成202.10.1.2,不是从3往下延伸,这一块很疑惑。

配置NAT Server

NAT Server功能为了解决外网访问采用私网IP的内网服务器的一种NAT方案,又称为内部服务器”NAT方案

NAT Server的基本配置思想就是为内部服务器创建全局公网IP地址到内部私网IP地址之间的一对一静态映射表项,同样可根据实际需要选择配置其他NAT扩展应用技术。

①配置内部服务器地址映射
②(可选)使能DNS Mapping
③(可选)使能NAT ALG功能
④(可选)配置NAT过滤方式和映射模式
⑤(可选)配置两次NAT
⑥(可选)配置NAT日志输出
⑦(可选)配置NAT地址映射表项老化时间

一、配置NATServer地址映射

在NAT Server中,也要像静态NAT那样配置NAT地址转换映射表,用来一对一地配置内部服务器的地址映射表项。

system-view
interface interface-type interface-number   
 键入外网主机访问内部服务器的接口(不一定是NAT出接口,必须是三层接口)
nat server protocol {tcp | udp} global {global-address | current-interface} global-port inside host-address [host-port] [vpn-instance vpn-instance-name] [acl acl-number][description description]
nat server protocol {tcp | udp} global interface interface-type interface-number global-port [vpn-instance vpn-instance-name] inside host-address [host-port] [vpn-instance vpn-instance-name] [acl acl-number][description description]
nat server [protocol {protocol-number |icmp | tcp | udp}] global {global-address | current-interface | interface interface-type interface-number } inside host-address [vpn-instance vpn-instance-name] [acl acl-number][description description]

以上是三选一配置,定义一个内部服务器的映射表,外部用户可以通过地址和端口转换来访问内部服务器的某项服务。

NAT Server和静态NAT的区别就是NAT Server对于内网主动访问外网的情况不做端口替换,仅作地址替换,因为Internet中这些服务都是直接使用其对应的默认端口,不可更改。

在NAT Server的配置中往往涉及一个内网用户访问内部服务器的需求问题:

①当内网服务器有域名,DNS服务器在内网侧,内网用户需要通过域名访问内部服务器,或者内网服务器没有域名,内网用户需要通过私网IP地址访问内部服务器时,无需另外的配置,只需在NAT设备上配置好内部服务器地址映射就可以了。(这里的配置是为外部用户访问私网服务器而设置的,只需要配置内部服务器地址映射

②当内网服务器有域名,DNS服务器在公网侧,内网用户需要通过域名访问内部服务器,这时除需要配置内部服务器地址映射外,还需要配置DNS Mapping和DNS ALG。(这个也是很自然的,DNS服务器的解析是公网的IP地址,穿过NAT是必须进行DNS报文内部数据的修改,改为内部私网地址

③内网服务器没有域名,内网用户通过公网IP地址访问内部服务器,这时除了配置内部服务器地址映射外,还需通过QoS流策略重定向下一跳行为,定义内部网络用户以公网IP访问内部服务器时的下一跳为NAT出接口IP,并在NAT内部接口方向进行应用。

下面是一个流策略重定向的示例,假设内部网络的IP网段为192.168.1.0/24,内部服务器的公网IP地址为1.1.1.10/24,NAT出接口IP地址为1.1.1.1/24,NAT内部接口为Ethernet0/0/1。(这里给出了一个NAT内部接口,个人理解这是一个错误的说法,或者说是一个会引起混乱的说法,其实就是NAT的出接口,他这里强调内部接口,通过下面的配置例子,其实是想说的是NAT出接口的inbound方向。一般的我们理解一个接口的入方向,都是按照这个接口上的线缆上数据是流入还是流出接口来判断的,而这里的数据是从路由器或交换机设备内部来的,就是内部用户通过内部网络接口进入到设备,被设备设置的策略路由给导向NAT的出接口,这时的数据被看做是inbound,即数据被看做外部用户访问内部私网服务器的数据,这时就按照NAT映射进行地址映射,外部公网IP地址转换为内部私网IP地址。

<Huawei>system-view
[Huawei]acl number 3000
[Huawei-acl-adv-3000]rule 5 permit ip source 192.168.1.0 0.0.0.255 destination 1.1.1.10 0   !—定义一个由内部网络访问内部服务器公网IP地址的高级ACL
[Huawei-acl-adv-3000]quit
[Huawei]traffic classifier redirect operator or  !--创建流分类,并指明下面的匹配规则为逻辑或类型
[Huawei-classifier-redirect]if-match acl 3000
[Huawei-classifier-redirect]quit
[Huawei]traffic behavior redirect    !--创建流行为
[Huawei-behavior-redirect]redirect ip-nexthop 1.1.1.1  !--重定向下一跳NAT出接口IP地址
[Huawei]traffic policy redirect
[Huawei-trafficpolicy-redirect]classifier redirect behavior redirect  !--关联流分类和流行为
[Huawei-trafficpolicy-redirect]quit
[Huawei]interface Ethernet0/0/1
[Huawei-Ethernet0/0/1]traffic-policy redirect inbound

二、NAT Server地址映射配置示例

公司提供WWW Server和FTP Server共外部网络用户访问。WWW Server内部IP地址192.168.20.2/24,端口8080,对外公布的地址为202.169.10.5/24,FTP Server内部IP为10.0.0.3/24,对外公布的地址为202.169.10.33/24,对端运营商侧地址为202.169.10.2/24。

1、基本配置思路

没有要求采用域名访问WWW服务器(不需DNS服务),没要求内网用户通过服务器的公网IP或域名访问,所以仅需配置基本的NAT Server即可。对于WWW服务器也就是不需要配置DNS ALG,但对于FTP服务器,仍需要配置ALG FTP。

2、具体配置步骤

①配置各接口IP地址。假设WWW和FTP服务器的两个LAN接口是二层接口,都必须先加入到一个VLAN中,然后在对应的VLANIF接口上配置IP地址。

<Huawei>system-view
[Huawei]sysname Router
[Router]vlan 100
[Router-vlan100]quit
[Router]interface vlanif 100
[Router-Vlanif100]ip address 192.168.20.1 24
[Router-Vlanif100]quit
[Router]interface ethernet2/0/0
[Router-Ethernet2/0/0]port link-type access
[Router-Ethernet2/0/0]port default vlan 100
[Router-Ethernet2/0/0]quit
[Router]vlan 200
[Router-vlan200]quit
[Router]interface vlanif 200
[Router-Vlanif200]ip address 10.0.0.1 24
[Router-Vlanif100]quit
[Router]interface ethernet 2/0/1
[Router-Ethernet2/0/1]port link-type access
[Router-Ethernet2/0/0]port default vlan 200
[Router-Ethernet2/0/0]quit
[Router]interface gigabitethernet 3/0/0
[Router-GigabitEthernet3/0/0]ip address 202.169.10.1 24

②配置WWW和FTP服务器地址映射

[Router-GigabitEthernet3/0/0]nat server protocol tcp global 202.169.10.5  inside 192.168.20.2 8080
[Router-GigabitEthernet3/0/0]nat server protocol tcp global 202.169.10.33 ftp inside 10.0.0.3 ftp
[Router-GigabitEthernet3/0/0]quit

③使能FTP的NAT ALG功能

[Router]nat alg ftp enable

④配置到达Internet的缺省路由,下一跳为运营商侧的IP地址202.169.10.2

[Router]ip route-static 0.0.0.0 0.0.0.0 202.169.10.2

配置好后,可执行display nat server查看NAT Server配置:

eNSP:


在使用了NAT server后,外部用户通过FTP客户端也能访问内部FTP服务器,如果不配置nat alg ftp enable,在会显示登录成功了,但是服务器文件列表是空的。这就是NAT server映射成功,访问外部IP,成功映射到了内部FTP服务器上,但是因为FTP协议中数据部分含有FTP服务器的地址,没有转换,所以文件列不出来。

三、NAT综合配置示例

WWW服务器内部IP为192.168.0.100/24,端口8080,对外公网IP为202.10.1.3/24,域名为www.TestNat.com,NAT路由器出接口GE1/0/0的IP地址为202.10.1.2/24,内部接口Eth2/0/0的IP为192.168.0.1,对端运营商侧地址为202.10.1.1/24,现公司要求通过公司内部的Web服务器对外网用户提供Web服务器,同时公司的内网用户还可以访问外网,内网用户也可以通过外网的DNS服务器使用域名访问公司内部的Web服务器。

1、基本配置思路

①仅有一个公网IP地址配置在NAT路由器的出接口上,无论内部网络用户访问Internet,还是访问在Internet中发布的内部Web服务器,都只能通过一个公网IP地址进行。内部网络用户访问Internet可以通过Easy IP来实现,公网用户或内部网络用户访问发布到了Internet中Web服务器,只能通过NAT Server来实现。

②用户要能够通过域名访问位于内部网络,且DNS服务器又位于Internet的Web服务器,这时需要配置DNS ALG和DNS Mapping。

2、具体配置步骤

①配置各接口IP地址。

<Huawei>system-view
[Huawei]sysname Router
[Router]interface gigabitethernet 1/0/0
[Router-GigabitEthernet1/0/0]ip address 202.10.1.2 24
[Router-GigabitEthernet1/0/0]quit
[Router]interface ethernet 2/0/0
[Router-Ethernet2/0/0]ip address 192.168.0.1 24
[Router-Ethernet2/0/0]quit

②配置Easy IP

[Router]acl 2000
[Router-acl-basic-2000]rule 5 permit source 192.168.0.0 0.0.0.255 !--定义用于指定NAT内部网络用户地址的基本ACL规则
[Router-acl-basic-2000]quit
[Router]interface gigabitethernet 1/0/0
[Router-GigabitEthernet1/0/0]nat outbound 2000!--在出接口上把内部网络地址与本接口IP地址进行关联
[Router-GigabitEthernet1/0/0]quit

③配置NAT Server

[Router]interface gigabitethernet 1/0/0
[Router-GigabitEthernet1/0/0]nat server protocol tcp global 202.10.1.3 www inside 192.168.0.100 8080
[Router-GigabitEthernet1/0/0]quit

④配置DNS 的NAT ALG和DNS Mapping

[Router]nat alg dns enable
[Router]nat dns-map www.TestNat.com 202.10.1.3 80 tcp !—配置内部web服务器“域名-公网IP-端口-协议类型”
[Router]quit

⑤配置到达Internet的缺省路由,指定下一跳地址为运营商侧公网IP地址202.10.1.1

[Router]ip route-static 0.0.0.0 0.0.0.0 202.10.1.1

 

NAT管理

1)display nat address-group [group-index] [verbose]:查看指定或全部的NAT地址池或简要或者详细配置信息

2)display nat outbound [acl acl-number | address-group group-index |interface interface-type interface-number [.subnumber]]:查看指定ACL或地址池或出接口下的NAT出接口地址关联信息。

3)display nat static [global global-address | inside host-address[vpn-instance vpn-instance-name] | interface interface-type interface-name]:查看公网地址或内网地址或出接口下的静态NAT配置信息。

4)display nat server [global global-address | inside host-address[vpn-instance vpn-instance-name] | interface interface-type interface-name |acl acl-number]:查看指定公网地址、内网地址或者出接口下的NAT Server地址映射表配置信息。

5)display nat alg:查看NAT地址转换中的ALG配置信息。

6)display nat dns-map [domain-name]:查看DNS映射信息

7)display nat overlap-address {map-index | all | inside-vpn-instance  inside-vpn-instance -name}:查看NAT双向地址转换(即两次NAT)的相关信息。

8)display firewall-nat session aging-time:查看NAT表项老化时间

9)display nat filter-mode:查看NAT过滤方式

10)display nat mapping-mode:查看NAT映射模式

11)display nat mapping table {all | number}或者display nat mapping tableinside-address ip-address protocol {tcp|udp} port port-number [vpn-instancevpn-instance-name]:查看NAT映射表所有表项信息或个数。

12)display nat session {all [ verbose] | number}或者display nat session {[protocol {icmp | tcp | udp | protocol-number}][source source-address [source-port]] [destination destination-address [destination-port]]}[verbose]:查看NAT的会话信息。

13)reset nat session {all | transit interface interface-typeinterface-number}:清除NAT会话信息。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值