首先,配置各接口的IP地址。内网使用私有IP. 外网使用公网IP. 并指定其属于内外接口。
其次,定义静态建立IP地址之间的静态映射。 最后,指定其默认路由。 格式: 静态模式
在内部本地地址与内部合法地址之间建立静态地址转换。在全局设置状态下输入:
router(config)#Ip nat inside source static 内部本地地址 内部合法地址
router(config)#ip nat inside source static 10.1.1.2 192.168.1.2
指定连接网络的内部端口 在端口设置状态下输入: Router(config-if)#ip nat inside
Router(config)#int e0
Router(config)#ip add 10.1.1.1 255.255.255.0 Router(config-if)#ip nat inside
指定连接外部网络的外部端口 在端口设置状态下输入: Router(config-if)#ip nat outside
Router(config)#int s0
Router(config-if)#ip add 192.168.1.1 255.255.255.0 Router(config-if)#ip nat outside
Router(config)#ip route 0.0.0.0 0.0.0.0 s0 (指定出口的默认路由,这是容易漏掉的地方)
Router>en (进入特权模式) Router#config (进入全局配置模式) Configuring from terminal, memory, or network [terminal]? Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#ho R3 (命名为R3) R3(config)#no ip domain-lo
(关闭域名查询,在实验环境中,敲入错误的命令,它将进行域名查询,故关闭他)
R3(config)#line c 0 (进入线路CONSOLE接口0下)
R3(config-line)#logg syn (启用光标跟随,防止日志信息冲断命令显示的位置)
R3(config-line)#exec-t 0 0 (防止超时,0 0 为永不超时) R3(config-line)#exit
R3(config)#int e0 (进入以太网接口下)
R3(config-if)#ip add 192.168.1.1 255.255.255.0 (设置IP地址)
R3(config-if)#ip nat inside (设置为内部接口) R3(config-if)#no shut R3(config-if)#exit
R3(config)#int ser1 (进入串口下) R3(config-if)#ip add 100.0.0.1 255.255.255.0 R3(config-if)#no shut
R3(config-if)#ip nat outside (设置为外部接口) R3(config-if)#exit
R3(config)#ip nat inside source static 191.168.1.1 100.0.0.1
(设置静态转换,其中ip nat inside source 为NAT转换关键字,这里是静态,故为STATIC) R3(config)#ip classless
R3(config)#ip route 0.0.0.0 0.0.0.0 s0(这里是出口或者下一跳地址)
R3(config)#exit
动态NAT配置步骤:
首先,配置各需要转换的接口的IP,设置内外网IP等。 其次,定义动态地址转换池列表
再次,配置ACL列表,需要转换的内网IP地址(或者网段)。
最后,设置转换后的出口地址段及MASK(多IP可以多分流,减轻转换后的负担) 格式: 动态
定义内部合法地址池 router(config)#ip nat pool 地址池名称 起始IP地址 终止IP地址 子网掩码 router(config)#ip nat pool ne001 171.69.233.209 171.69.233.222
定义一个标准的access-list规则以允许哪些内部地址可以进行动态地址转换。 Router(config)#Access-list 标号 permit 源地址 通配符
Router(config)#access-list 2 permit 192.168.1.1 0.0.0.255
由access-list指定的内部本地地址与指定的内部合法地址池进行地址转换。 Router(config)#ip nat inside source list ACL编号 pool内部合法地址池名字
Router(config)#ip nat inside source list 2 pool ne001 定义的ACL使用地址池pool ne001 内的外网IP
指定与内部网络相连的内部端口在端口设置状态下:
Router(config-if)#ip nat inside 指定某一端口为外部接口 Router(config-if)#ip nat inside
指定与外部网络相连的外部端口
Router(config-if)#Ip nat outside 指定某一端口为外部接口 Router(config-if)#ip nat outside
重载内部全局地址
定义访问控制列表
启用源地址转换 router(config)#ip nat insid source list ACL 编号 interface 接口号 overload
router(config)#ip nat insid source l ist 2 int s0 overload
指定内部接口 ip nat inside 指定外部接口 ip nst outside
三, 检测
debug ip nat 配置示例:
(一): Router#config
Configuring from terminal, memory, or network [terminal]? Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#ho R2
R2(config)#no ip domain-lo R2(config)#line c 0
R2(config-line)#logg syn R2(config-line)#exec-t 0 0 R2(config-line)#exit R2(config)#int ser0
R2(config-if)#ip add 100.0.0.1 255.255.255.0 R2(config-if)#ip nat inside R2(config-if)#no shut
R2(config-if)#clock rate 5600
R2(config-if)#ip access-group 1 out R2(config-if)#exit R2(config)#int e0
R2(config-if)#ip ad 10.0.0.1 255.255.255.0 R2(config-if)#no shut R2(config-if)#exit (二):
R2(config)#ip nat inside source list 1 pool dongsheng (三):
R2(config)#access-list 1 permit 10.0.0.1 0.0.0.0 R2(config)#access-list 1 permit 10.0.0.2 0.0.0.0 (四):
R2(config)#ip nat pool dongsheng 100.0.0.1 100.0.0.2 netmask 255.255.255.0 R2(config)#exit
动态NAT配置
ip nat inside source list 1 pool dongsheng
access-list 1 permit 10.0.0.1 0.0.0.0(与下面的公网IP对应)
access-list 1 permit 10.0.0.2 0.0.0.0
ip nat pool dongsheng 192.16.1.1 192.16.1.2 netmask 255.255.255.0
注:(一段IP地址范围,动态NAT与静态NAT一样,都是一对一的关系,
如果上面内网是3个IP,则下面也需要3个公网IP,如何设置2个出口呢?在2个串口上设置?) !
interface Ethernet0
ip address 10.1.1.1 255.255.255.0 ip nat inside no shut !
interface Serial0
ip address 192.16.1.1 255.255.255.0 ip nat outside no shut !
动态配置示例
Router#config
Configuring from terminal, memory, or network [terminal]? Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#ho R2
R2(config)#no ip domain-lo R2(config)#line c 0
R2(config-line)#logg syn R2(config-line)#exec-t 0 0 R2(config-line)#exit Router(config)#int ser0
Router(config-if)#ip add 100.1.1.1 255.255.255.0 Router(config-if)#no shut
Router(config-if)#ip nat outside Router(config-if)#exi Router(config)#int e0
Router(config-if)#ip add 192.168.2.1 255.255.255.0 Router(config-if)#ip nat inside Router(config-if)#no shut Router(config-if)#exit
Router(config)#ip nat inside source list 2 pool ds2 overload
(跟前面一样,这里设置复用动态转换,跟动态一个区别就是这里多增加了一个OVERLOAD)
Router(config)#access-list 2 permit 192.168.2.1 0.0.0.0 Router(config)#access-list 2 permit 192.168.2.2 0.0.0.0 Router(config)#ip nat pool ds2 100.1.1.1 100.1.1.2 net 255.255.255.0
Router(config)#exi Router#sh run
PAT配置示例
Router>en
Router#config
Configuring from terminal, memory, or network [terminal]?
Enter configuration commands, one per line. End with CNTL/Z. Router(config)#int ser1 Router(config-if)#exit
Router(config)#no ip domain-lo Router(config)#line c 0
Router(config-line)#logg syn Router(config-line)#exec-t 0 0 Router(config-line)#exit Router(config)#int ser1
Router(config-if)#ip add 100.0.0.1 255.255.255.0 Router(config-if)#ip nat outside
Router(config-if)#ip access-group 1 out Router(config-if)#no shut Router(config-if)#exit Router(config)#int e0
Router(config-if)#ip add 192.168.1.1 255.255.255.0 Router(config-if)#ip nat inside Router(config-if)#no shut Router(config-if)#exit
Router(config)#ip nat inside source list 1 pool ds1 overload (其中ip nat inside source list X pool xx overload为关键字) Router(config)#access-list 1 permit 192.168.0.1 255.255.0.0 (设置访问列表,允许内部的网络转换出去,网段自由设顶) Router(config)#ip nat pool ds1 100.0.0.1 100.0.0.2 netmask 255.255.255.0 (这里的IP为能在公网上使用的IP,这里设置了2个IP,可以为几个,
如果后面设置为10。0。0。5,那么这里就有5个公网IP,一般2个就够了) Router(config)#exit
因篇幅问题不能全部显示,请点此查看更多更全内容