Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5702018
  • 博文数量: 745
  • 博客积分: 10075
  • 博客等级: 上将
  • 技术积分: 7716
  • 用 户 组: 普通用户
  • 注册时间: 2005-04-29 12:09
文章分类

全部博文(745)

文章存档

2019年(1)

2016年(1)

2010年(31)

2009年(88)

2008年(129)

2007年(155)

2006年(197)

2005年(143)

分类:

2005-09-13 10:30:52

最近看到论坛上不少兄弟们提到NAT网络地址转换的问题,其实这种资料在网上到处搜得到,只要是基础稍微好一点的,应该能看得懂。下面提供两种NAT地址转换的示例,希望能对大家有所帮助。

     案例1:   tcp/udp 端口的NAT映射

      不同应用程序的使用的tcp/udp端口号是不同的,比如,web是用的80 ftp是21  smtp 是25 pop3是110,等。如果ISP只分配了一个可用的IP地址,就可以将端口绑定到不同的内部IP地址,以实现Internet对内部WEB服务器的访问。

    注:这种情况内部只能有一台WEB服务器,当然,也可以改变默认端口,但这种访问方式相对来说比较困难!

     网络环境:路由器使用Cisco 的2621 ,内部网络采用IP地址段192.168.1.1~192.168.1.254 局域网fa0/0口的IP地址为192.168.1.1 广域网使用IP地址211.82.20.129~255.255.255.252 内部有WEB服务器一台,FTP服务器一台。

具体配置命令:

    2621>en

    2621#conf t

    2621(config)#int fa0/0

    2621(config-if)#ip add 192.168.1.1 255.255.255.0  //定义端口的ip地址

    2621(config-if)#no sh  //激活端口

    2621(config-if)#ip nat inside   //定义fa0/0为内部端口

     2621(config-if)#exit  //退回全局配置模式 这一步不是必须的,也可以直接用int fa0/1 切换到fa0/1端口

    2621(config)#int fa0/1  

     2621(config-if)# ip add 211.82.20.129 255.255.255.252

     2621(config-if)#no sh

     2621(config-if)#ip nat outside  //定义fa0/1为外部端口

      2621(config-if)#exit

      2621(config)#access-list 9 permit 192.168.1.0 0.0.0.255 //定义需要访问Internet的本地网络的访问列表

      2621(config)#ip nat pool isp 211.82.20.129 211.82.20.129 netmask 255.255.255.252  //定义NAT地址池,这一步可以省略,由于此IP地址位于路由器的端口,所以,可以不定义NAT池,只使用 ip nat inside source list 命令即可!

     2621(config)#ip nat inside source list 9 pool isp overload   //定义端口复用地址转换,注意,这里是使用了 地址池的情况,如果没有定义nat地址池,可以使用 ip nat inside source list 9 interface fa0/1 overload 来启用端口复用转换。

   2621(config)#ip nat inside source static tcp 192.168.1.2 80 211.82.20.129 80  //定义web服务器的静态端口转换

  2621(config)#ip nat inside source static tcp 192.168.1.2 21 211.82.20.129 21  //定义FTP服务器的静态端口转换

2621(config)# ip route 0.0.0.0 0.0.0.0 interface fa0/1 //定义静态路由,如果你内网不需要访问Internet ,这一步可以省掉。

2621#copy run start //保存配置

2621(config)#erase flash //危险的操作,可以学到不少东西,切勿模仿!!!!      ^_^使用此命令请先看本站文章:Cisco IOS 损坏后的恢复

案例2:利用地址转换实现负载均衡

  为什么要实现负载均衡?什么,你不知道,请先读完幼儿园再来,谢谢!

  可以通过服务器群集负载均衡、交换机负载均衡、DNS解析负载均衡等!当然,这些不在本文讨论之例了。

  通过地址转换方式实现服务器的负载均衡,这种实现大多是采用轮询方式实现,使每台服务器都拥有平等被访问的机会。

  网络环境:Cisco 2621路由器,(其实选用这种路由器是因为2621路由器刚好提供两个快速以太网口,还有两个广域网插槽,可以很好的扩展。) 内部地址采用192.168.1.1~192.168.1.254 ,局域网fa0/0口采用192.168.1.1 广域网口fa0/1的ip address  采用202.103.96.65 255.255.255.248 .ISP分配的地址段为202.103.96.65 ~202.103.96.70内部两台FTP服务器,两台WEB服务器。由于是做负载均衡用的,所以两台FTP服务器的内容完全一样,web服务器也是如此。两台web 服务器地址为192.168.1.3 192.168.1.4 ftp服务器地址为192.168.1.5 192.168.1.6

配置实例:

    2621>en

    2621#conf t

    2621(config)#int fa0/0

    2621(config-if)#ip add 192.168.1.1 255.255.255.0  //定义端口的ip地址

    2621(config-if)#no sh  //激活端口

    2621(config-if)#ip nat inside   //定义fa0/0为内部端口

    2621(config-if)#int fa0/1  

     2621(config-if)# ip add 202.103.96.65 255.255.255.248

     2621(config-if)#no sh

     2621(config-if)#ip nat outside  //定义fa0/1为外部端口

      2621(config-if)#exit

      2621(config)#access-list 9 permit 202.103.96.66 //定义web服务器的轮询地址表

     2621(config)#access-list 10 permit 202.103.96.67 //定义ftp服务器的轮询地址表

    2621(config)#access-list 11 permit 192.168.1.0 0.0.0.255  //定义本地访问列表

    2621(config)#ip nat pool web 192.168.1.3 192.168.1.4  255.255.255.0 type rotary  //定义web服务器的IP地址池,Rotary关键字表示准备使用轮询策略从NAT池中取出相应的IP 地址用于转换进来的IP报文,访问202.103.96.66的请求将依交次发送给192.168.1.3 和192.168.1.4

   2621(config)#ip nat pool ftp 192.168.1.5 192.168.1.6 255.255.255.0 type rotary

  2621(config)#ip nat pool lan 202.103.96.68 202.103.96.70 netmask 255.255.255.248

  2621(config)#ip nat inside destination list 9 pool web //定义与列表9相匹配的IP地址的报文将使用轮询策略

  2621(config)#ip nat inside destination list 10 pool ftp

  2621(config)#ip nat inside source list 11 pool lab overload

  2621(config)#ip route 0.0.0.0 0.0.0.0 fa0/1

  2621(config)#exit

  2621#copy run start

                                  <-the end->     by Cisco枫叶 2004.7.16 chang sha hun.

阅读(2049) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~