NAT配置步骤

更新时间:2024-02-03 10:09:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

防火墙路由引入

需要的设备:三个路由器、一个交换机、一个ASA防火墙

交换机上的配置 SW1> SW1>en

SW1#vlan database SW1(vlan)#vlan 2 VLAN 2 added:

Name: VLAN0002 SW1(vlan)#vlan 3 VLAN 3 added:

Name: VLAN0003 SW1(vlan)# SW1(vlan)#exit SW1#conf t

SW1(config)#int f0/2

SW1(config-if)#switchport mode access SW1(config-if)#switchport access vlan 2 SW1(config-if)#int f0/11

SW1(config-if)#switchport mode access SW1(config-if)#switchport access vlan 2 SW1(config)#int range f0/3 , f0/12

SW1(config-if-range)#switchport mode acc SW1(config-if-range)#switchport mode access SW1(config-if-range)#switchport access vlan 3 SW1(config-if-range)#^Z R1> R1>en R1#conf t

R1(config)#int f0/0

R1(config-if)#ip add 10.1.1.1 255.255.255.0 R1(config-if)#no shut R1(config)#int loopback 0

R1(config-if)#ip add 1.1.1.1 255.255.255.0 R1(config-if)#no shut R1(config-if)#exit

R1(config)#line vty 0 4 R1(config-line)#no login R1(config-line)#exit

R1(config)#ip route 0.0.0.0 0.0.0.0 10.1.1.8(配置缺省路由) R2>

R2>en R2#conf t

R2(config)#int fastEthernet 0/0

R2(config-if)#ip address 20.1.1.2 255.255.255.0 R2(config-if)#no shut

R2(config)#interface loopback 0

R2(config-if)#ip address 2.2.2.2 255.255.255.0 R2(config-if)#no shutdown R2(config-if)#exit

R2(config)#router ospf 1

R2(config-router)#network 20.1.1.0 0.0.0.255 area 0(宣告路由网段) R2(config-router)#network 2.2.2.0 0.0.0.255 a 0 (宣告路由网段) R2(config-router)#exit R3> R3>en R3#conf t

R3(config)#interface fastEthernet 0/0

R3(config-if)#ip address 30.1.1.3 255.255.255.0 R3(config-if)#no shut R3(config-if)#int loo 0

R3(config-if)#ip address 3.3.3.3 255.255.255.0 R3(config-if)#no shut R3(config-if)#exit

R3(config)#router eigrp 100

R3(config-router)#network 3.3.3.0(宣告本地网段) R3(config-router)#network 30.1.1.0(宣告本地网段) R3(config-router)#no auto-summary (关闭汇总) R3(config-router)#exit

ASA1防火墙上的配置 pixfirewall> pixfirewall> en Password:

pixfirewall# conf t

pixfirewall(config)# ho ASA1

ASA1(config)# interface ethernet 0 ASA1(config-if)# nameif outside

INFO: Security level for \(默认安全级为0) ASA1(config-if)# ip address 10.1.1.8 255.255.255.0 ASA1(config-if)# no shut

ASA1(config-if)# interface ethernet 1 ASA1(config-if)# nameif inside

INFO: Security level for \ (默认安全级为100)

ASA1(config-if)# ip address 20.1.1.8 255.255.255.0 ASA1(config-if)# no shut

ASA1(config-if)# interface ethernet 2 ASA1(config-if)# nameif DMZ

INFO: Security level for \ (默认安全级为0) ASA1(config-if)# security-level 50(设置安全级为50) ASA1(config-if)# ip address 30.1.1.8 255.255.255.0 ASA1(config-if)# no shut ASA1(config-if)# exit

下面配置静态路由

ASA1(config)# route outside 1.1.1.0 255.255.255.0 10.1.1.1(配置静态路由:从outside接口出 目的网络和子网掩码 下一跳ID) 下面配置ospf动态路由 ASA1(config)# router ospf 1

ASA1(config-router)# network 20.1.1.0 0.0.0.255 area 0

ERROR: OSPF: Invalid address/mask combination (discontiguous mask) (防火墙上不支持反掩码) ASA1(config-router)# network 20.1.1.0 255.255.255.0 area 0

ASA1(config-router)# redistribute static subnets (在ospf中引入静态携带子网) ASA1(config-router)# redistribute ?

router mode commands/options:

connected Connected (直连路由)

eigrp Enhanced Interior Gateway Routing Protocol (EIGRP)(eigrp动态路由) ospf Open Shortest Path First (OSPF)(ospf动态路由) rip Routing Information Protocol (RIP)(rip动态路由) static Static routes(静态路由)

ASA1(config-router)# redistribute connected subnets(在ospf中引入直连路由携带子网) ASA1(config-router)# redistribute eigrp 100 subnets(在ospf中引入eigrp路由) ASA1(config-router)# exit 下面配置eigrp动态路由 ASA1(config)# router eigrp 100

ASA1(config-router)# network 30.1.1.0

ASA1(config-router)# no auto-summary (关闭自动汇总)

ASA1(config-router)# redistribute connected(在eigrp中引入直连) ASA1(config-router)# redistribute static(在eigrp中引入静态)

ASA1(config-router)# redistribute ospf 1 metric 10000 100 255 1 1500(把ospf引入eigrp中) ASA1(config-router)# exit

在ASA1上做ACL放行配置

ASA1(config)# access-list bb permit tcp any any eq telnet (any的意思是允许所有路由通过) ASA1(config)# access-group bb in interface outside(把bb的这个访问列表应用到in的方向outside端口上)

放行ICMP流量有俩种方法

第一种方法是将icmp添加到策略表里(只能从高级别访问低级别、低级别不可以访问高级别)

ASA1(config)# policy-map global_policy

ASA1(config-pmap)# class inspection_default ASA1(config-pmap-c)# inspect icmp ASA1(config-pmap-c)# exit ASA1(config-pmap)# exit ASA1(config)# show run

policy-map type inspect dns migrated_dns_map_1 parameters

message-length maximum 512 policy-map global_policy class inspection_default

inspect dns migrated_dns_map_1 inspect ftp

inspect h323 h225 inspect h323 ras inspect netbios inspect rsh inspect rtsp inspect skinny inspect esmtp inspect sqlnet inspect sunrpc inspect tftp inspect sip inspect xdmcp

inspect icmp (在策略表里看到这条信息) 在策略表中删掉ICMP

ASA1(config)# policy-map global_policy

ASA1(config-pmap)# class inspection_default ASA1(config-pmap-c)# no inspect icmp ASA1(config-pmap-c)# exit ASA1(config-pmap)# exit

第二种方法是将ICMP通过ACL访问控制列表放行 ASA1(config)# access-list bb permit icmp any any access-list bb extended permit tcp any any eq telnet access-list bb extended permit icmp any any ASA1(config)# access-group bb in interface DMZ

下面我们做防火墙上的NAT

ASA1(config)# show run nat-control

no nat-control(防火墙默认的情况下是关闭状态,所有我们在做NAT的时候就要把它开启) ASA1(config)# nat-control(开启NAT)

ASA1(config)# nat (inside) 1 20.1.1.0 255.255.255.0(设置20网段的ip地址进入1号列表池里进行转换)

ASA1(config)# global (outside) 1 10.1.1.10-10.1.1.20(设置1号地址里的转换ip 所进来的ip都将转换成地址池里的ip才能出去)(设置进入outside区域转换的地址池)

ASA1(config)# nat (inside) 1 2.2.2.0 255.255.255.0(设置2.0的网段ip地址进入1号列表地址池里进行转换ip 它们共同使用1号地址池里的ip转换出去) ASA1(config)# show run nat(查看已配置好的nat转换) nat (inside) 1 2.2.2.0 255.255.255.0 nat (inside) 1 20.1.1.0 255.255.255.0

ASA1(config)# show run global (查看已配置的地址池) global (outside) 1 10.1.1.10-10.1.1.20

ASA1(config)# global (dmz) 1 30.1.1.90-30.1.1.100(设置进入dmz区域转换的地址池) ASA1(config)# show run global

global (outside) 1 10.1.1.10-10.1.1.20 global (DMZ) 1 30.1.1.90-30.1.1.100

(防火墙上清空所有配置的命令:ASA1(config)# clear configure all) (查看转换规则的命令是:ASA1(config)# show xlate) PAT(多对一)地址转换

ASA1(config)# nat (inside) 1 20.1.1.0 255.255.255.0 ASA1(config)# nat (inside) 1 2.2.2.0 255.255.255.0

ASA1(config)# global (outside) 1 10.1.1.100(建立PAT) ASA1(config)# show xlate (查看转换规则) 2 in use, 7 most used

PAT Global 10.1.1.100(6) Local 2.2.2.2 ICMP id 37 PAT Global 10.1.1.100(5) Local 20.1.1.2 ICMP id 36 ASA1(config)# clear xlate(清除转换规则) ASA1(config)# show xlate 0 in use, 7 most used 一个公有ip的转换方法

ASA1(config)# nat (inside) 1 20.1.1.0 255.255.255.0 ASA1(config)# nat (inside) 1 2.2.2.0 255.255.255.0 ASA1(config)# global (outside) 1 interface

INFO: outside interface address added to PAT pool 在R2上telnet1.1.1.1时候在R1上查看转换的ip是 R1#who(查看转换完的命令)

Line User Host(s) Idle Location * 0 con 0 idle 00:00:00 66 vty 0 idle 00:00:12 10.1.1.8

Interface User Mode Idle Peer Address

我们将R3看成是服务器

NAT同一性(就是自己转换自己)

ASA1(config)# nat (dmz) 0 30.1.1.0 255.255.255.0 nat 0 30.1.1.0 will be identity translated for outbound ASA1(config)# show run nat

nat (dmz) 0 30.1.1.0 255.255.255.0

在到R3上R3#telnet 1.1.1.1 在到R1上who一下 R1#who

Line User Host(s) Idle Location * 0 con 0 idle 00:00:00 66 vty 0 idle 00:04:21 30.1.1.3

Interface User Mode Idle Peer Address 在防火墙上查看转换条目 ASA1(config)# show xlate 1 in use, 3 most used

Global 30.1.1.3 Local 30.1.1.3(自己转换自己)

NAT的豁免(和同一性作用一样)

ASA1(config)# access-list nonat permit ip 30.1.1.0 255.255.255.0 10.1.1.0 255.255.255.0(建立一个列表、名字叫做nonat、将30网段豁免到10网段上) ASA1(config)# show run access-list

access-list nonat extended permit ip 30.1.1.0 255.255.255.0 10.1.1.0 255.255.255.0 ASA1(config)# nat (dmz) 0 access-list nonat(调用到NAT上) 在到R3上telnet 10.1.1.1 R3#telnet 10.1.1.1 Trying 10.1.1.1 ... Open R1#

在到R1上查看转换条目 R1#who

Line User Host(s) Idle Location * 0 con 0 idle 00:00:00 66 vty 0 idle 00:00:10 30.1.1.3

Interface User Mode Idle Peer Address 到防火墙上查看转换信息 ASA1(config)# show xlate

0 in use, 3 most used(没有任何转换信息、因为豁免不转换信息) 在R1上清掉信息(也就是转换条目里的缓存) R1#clear line 66 [confirm]^P [OK]

R1#clear line 67 [confirm] [OK]

映射【把R3的(dmz区域)转换到R1的(outside区域)】这样R1访问的就是R1被转换好的地址

ASA1(config)# static (dmz,outside) 10.1.1.254 30.1.1.3(把30.1.1.3的地址映射成10.1.1.254的地址)

ASA1(config)# access-list out permit tcp any host 10.1.1.254 eq telnet (建立ACL 名字叫做out 允许tcp任何用户访问10.1.1.254这台主机的telnet远程) ASA1(config)# show run access-list

access-list out extended permit tcp any host 10.1.1.254 eq telnet

access-group out in interface outside(将ACL列表调用到outside区域里) ASA1(config)# show run access-group access-group out in interface outside

在到R3上telnetR110.1.1.1 R3#telnet 10.1.1.1 Trying 10.1.1.1 ... Open R1#

在到R1上查看转换信息 R1#who

Line User Host(s) Idle Location * 0 con 0 idle 00:00:00

66 vty 0 idle 00:00:11 10.1.1.254

Interface User Mode Idle Peer Address

在R1上telnetR3需要使用10.1.1.254的ip地址才能telnet到R3上去 R1#telnet 10.1.1.254 Trying 10.1.1.254 ... Open R3#

在到防火墙上查看static表 ASA1(config)# show run static

static (dmz,outside) 10.1.1.254 30.1.1.3 netmask 255.255.255.255(看到这条命令才可以) ASA1(config)# clear configure static(删除static列表条目)

多服务器对一个公有IP的做法

将公有IP的地址映射到服务器上的各种协议的端口号上、使他们对映 ASA1(config)# static (dmz,outside) tcp 10.1.1.254 23 30.1.1.3 23(将R1上的10.1.1.254的telnet端口号23映射到R3上的30.1.1.3上的telnet端口号23上)

ASA1(config)# static (dmz,outside) tcp 10.1.1.254 80 3.3.3.3 80 (将R1上的10.1.1.254的http

端口号80映射到R3上的3.3.3.3的http端口号80上) ASA1(config)# show run static (查看列表条目)

static (dmz,outside) tcp 10.1.1.254 telnet 30.1.1.3 telnet netmask 255.255.255.255 static (dmz,outside) tcp 10.1.1.254 www 3.3.3.3 www netmask 255.255.255.255 ASA1(config)# access-list out permit tcp any host 10.1.1.254 eq telnet ASA1(config)# access-list out permit tcp any host 10.1.1.254 eq 80

ASA1(config)# show run access-list access-list out extended permit tcp any host 10.1.1.254 eq telnet access-list out extended permit tcp any host 10.1.1.254 eq www

在R3开启http80服务 R3(config)#ip http server

在R1上telnet3.3.3.3的80服务 R1#telnet 10.1.1.254 80

Trying 10.1.1.254, 80 ... Open(看到这条信息就证明是通的) R1上退出敲qoid

本文来源:https://www.bwwdw.com/article/crtw.html

Top