查看完整版本: 求助于Juniper路由器高手,关于NAT地址池

redfoxjin 2008-3-18 17:10

求助于Juniper路由器高手,关于NAT地址池

我单位有数千用户,网通给分配了32个地址,为了大家上网一直做NAT,NAT中做了地址池,希望NAT转换时随机从地址池中取IP进行转换,按照Juniper的文档配置NAT部分如下
nat {
    pool natpool {
        address-range low 61.138.*.98 high 61.138.*.120;
        port automatic;
    }
    rule nat {
        match-direction output;
        term 1 {
            from {
                source-address {
                    222.27.64.0/19;
                }   
            }
            then {
                translated {
                    source-pool natpool;
                    translation-type source dynamic;
                }
            }
        }
    }
}

但是最近发现,大家上网都是正常的,但是测试发现地址池好像不起作用,NAT转换后的地址只有1个,就是地址池中最小的那个。
请问,我的配置中哪里有问题吗?或者说在配置路由器时,哪些关键地方我配错了?
请高手指点一下,这个问题困扰我好几个星期了,网上关于此的信息很少。

南行 2008-7-4 10:55

简要回答:

问题1:单位有10个机房及3个部门,可以划分13个VLAN来分别对应相应的部门及机房。由于一般不建议使用VLAN0,所以VLAN0保留用于各个接入交换机及企业核心网交换机之间传递VLAN协议使用(如:BDPU数据包,STP生成树协议等),因此,VLAN0+13个VLAN共使用14个VLAN

问题2:该问题描述不是很清楚,照常理,该问题是考察给定网络划分子网掩码的题。但按题目每个机房50台机器,共10个机房及部门,大约需要600个IP才可以保障。
按提示,如果使用NAT技术,实际中通常仅需1个公网地址既可以完成全部13个部门内网地址至公网地址的转化(PAT)。如果吹毛求疵的话,最多也就是用13个公网地址,每个部门用一个。

因此,此题仅可以理解为在给定的C类网络(211.100.58.0/24)中,划分13个等大小的子网。每个子网中的主机数量即为对应部门或机房(50个内部IP)可使用的公网地址。然后使用NAT地址池翻译的方法,将50个地址映射至这些子网地址上。

如果按上边的理解,C类网络如果想划分13个子网,则至少需要4位子网位才能保障(4为子网位最多可以划出16个子网,但需要设备支持子网位为全零的子网,否则只能划出15个),每个子网里最多可以有2的4次方减2(全零和全一两种情况)个主机。写出网段为:
211.100.58.0/28(4位子网位为全零)
211.100.58.16/28
211.100.58.32/28
211.100.58.48/28
211.100.58.64/28
211.100.58.80/28
211.100.58.96/28
211.100.58.112/28
211.100.58.128/28
211.100.58.144/28
211.100.58.160/28
211.100.58.176/28
211.100.58.192/28
211.100.58.208/28
211.100.58.224/28
211.100.58.240/28
每个子网中可以有14个主机地址(16-2)。即,每个部门或机房可以使用14个主机地址作为NAT地址池中用作翻译的公网地址。

每个网段地址映射过程:
以CISCO设备为例,
首先,定义设备的两个接口为outside和 inside(cisco: ip nat inside/outside)
然后,定义地址池范围为211.100.58.0/28(ip nat pool LAB 211.100.58.1 211.100.58.1.14 netmask 255.255.255.240)
并且,使用相应的ACL列表定义哪个机房的地址使用此地址池(ip nat inside source list 1 pool LAB , ip access-list 1 x.x.x.x x.x.x.x)

配置完毕后,相应X.X.X.X内部地址发送数据包至NAT设备后,NAT设备判断数据包的源地址符合ACL 1中的定义,则会将数据包的源地址替换为211.100.58.0/28地址池中可用的地址,当下一个x.x.x.y的内部地址发送数据包至NAT设备后,NAT设备会使用地址池中其他未使用的地址。

NAT设备将数据包源地址替换后,想外侧接口(outside)发出数据包,并建立一个NAT转换表,以记录哪个内部源地址x.x.x.x被替换为了地址池211.100.58.0/28中的哪个地址。当外侧的数据包返回时,NAT设备再次修改相应的目的地址为内部地址(inside),并从内部接口转发数据包

无法五天 2008-7-15 14:36

你可以为你的计算机设置固定的ip地址,也可以用路由器的DHCP服务为你的计算机自动分配一个ip地址。而DHCP自动分配的ip地址在用户少的情况下,会默认每次分配同一个ip地址给同一个MAC地址,虽然这看上去有点像静态ip地址,但是原理和方式还是DHCP的动态ip地址哦。

暖暖小兔 2008-7-18 12:50

你是采用固定ip还是采用pppoe形式上网的。如果是用pppoe的话就不用设置动态的nat地址池了,如果是多个固定ip 要确保在某一范围,因为nat池是以范围来确定的。

俞律师 2008-7-31 10:26

NAT分静态映射 动态映射和端口映射3类 静态映射就是内网和外网IP 一一对应的映射 动态映射是范围到范围的对应 当然外网IP是先到先得的 而端口影射则有一个复用的概念 所谓复用 就是把一个IP分给多个用户使用 一般来说一个IP可以拆分成4000条TCP进程 所以理论上即使NAT池里只有1个IP地址 最多也可以承载4000个用户同时使用

俞律师 2008-7-31 10:27

为什么会有nat地址转换
那是为了节省ip地址的开销
因为全球ip地址是有限的
所以 nat是一种 只需要一个ip地址就可以让局域网内的用户都可以上网的技术。

俞律师 2008-7-31 10:28

随着IPv6时代的到来,我也一直怀疑,是不是还有必要再去学习NAT技术——因为网络的资源不再如IPv4时代匮乏,而NAT技术正是为解决IP地址的紧缺而存在的,如此,NAT便没有存在的必要了。



但是,随着这篇文章的翻译,我的怀疑慢慢变成庆幸,渐而又变为肯定,通过翻译所学到的东西,不再仅仅是翻译第一手资料带来的成就感,更多的是通过翻译,去领悟技术前辈们的智慧与经验,也通过翻译,养成自己从第一手资料获得信息的习惯,从而将视野放得更宽,让理解更为透彻——至少,很多东西都是要经过仔细斟酌才真正转化为自己思想的一部分的。正是如此,我才坚定的要把这篇文章翻译完,也如之前所提到的,如果时间允许的话,我会用C#来写一些例子,让大家更好的理解NAT技术,掌握NAT技术(主要涉及到即时通讯、文件对等传输和语音应用三个方面)。






这篇文章主要是介绍一下“代理”机制的起因以及给P2P应用带来的不便,不需要任何基础知识:)






1. Introduction



1、简介






关键词:



middleboxe(s) —— 我翻译成“代理”,也许有更好的翻译



host —— 我翻译成“主机”,希望大家不要理解成服务器了,主机就是一台普通的终端机






Present-day Internet has seen ubiquitous deployment of "middleboxes" such as network address translators(NAT), driven primarily by the ongoing depletion of the IPv4 address space. The asymmetric addressing and connectivity regimes established by these middleboxes, however, have created unique problems for peer-to-peer (P2P) applications and protocols, such as teleconferencing and multiplayer on-line gaming. These issues are likely to persist even into the IPv6 world, where NAT is often used as an IPv4 compatibility mechanism [NAT-PT], and firewalls will still be commonplace even after NAT is no longer required.






在当今的Internet中,普遍存在使用“代理”设备来进行网络地址转换(NAT),导致这种现象的原因是 IPV4 地址空间的资源耗尽危机。虽然不对称 asymmetric 的地址分配和连通性制度已经在代理中被定义,但是却给端对端应用程序和协议制定造成了一些特殊的问题。像电话会议和多媒体网络游戏。这些问题即使在IPV6世界中还是会存在,因为NAT作为IPV4的一种兼容性机制经常被使用[NAT-PT],并且防火墙将仍然将普遍存在,即使不再需要NAT技术。






Currently deployed middleboxes are designed primarily around the client/server paradigm, in which relatively anonymous client machines actively initiate connections to well-connected servers having stable IP addresses and DNS names.



Most middleboxes implement an asymmetric communication model in which hosts on the private internal network can initiate outgoing connections to hosts on the public network, but external hosts cannot initiate connections to internal hosts except as specifically configured by the middlebox's administrator. In the common case of NAPT, a client on the internal network does not have a unique IP address on the public Internet, but instead must share a single public IP address, managed by the NAPT, with other hosts on the same private network.The anonymity and inaccessibility of the internal hosts behind a middlebox is not a problem for client software such as web browsers, which only need to initiate outgoing connections. This inaccessibility is sometimes seen as a privacy benefit.






当前使用的“代理”技术主要是为 客户端/服务端 C/S 结构设计的,为了实现那些需要连接但是又没有固定IP地址的客户端能够连接到一台配置好的拥有固定IP和DNS域名的服务器。
大多数的“代理”使用一种 asymmetric 通信模型,即 私网(局域网) 的主机能发起一个“外出”连接去连接公网上的主机。 但是公网上的主机却无法发送信息给私网上的主机(除非对“代理”进行特殊的配置),NAPT(网络地址端口转换)的普通情况是,一个私网客户端不需要一个公网的固定的IP地址,但是必须要共享一个由NAPT控制的公网的固定IP地址(当然这个NAPT是处于同一个私网内部的)。这样的话,这些匿名的并且看起来难以触及的藏在NAT之后的内网主机对于像 Web浏览器 这种软件来说就不是一个问题,因为内网的主机只需要发起向外部的连接就可以了。这样一来,无法触及也还是有他的优点的——那就是具有保密性。

俞律师 2008-7-31 10:28

nat服务就是做这个的啊
nat服务会维护这一个列表
里面标记着数据是哪个内网机器请求的
数据返回的时候会索引那个表
然后把数据发回给请求的内网机器

寂寞代言 2008-8-2 12:00

如何在Windows2000 Server 服务器上配置 NAT(网络地址转换) (注:Windows2003跟Windows一样)
NAT与ICS一样,主要用于家庭网络或小型办公网络,它可以使用多台计算机共享单个的Internet连接.
网络地址转换包括:
1.转换组件
它的作用是转换公用网络和专用网络的IP地址,转换专用网络和Internet之间转发数据包的TCP/UDP 端口号。
2.寻址组件
寻址组件是简化的 DHCP 服务器,它可以为专用网络中的客户机分配IP地址、子码掩码、默认网关以及 DNS 服务器的IP地址。通常它的地址池中只包含20个左右的地址,如你将NAT服务器的地址设置为192.168.1.1,那么它的静态地址池中包含的地址往往是从192.168.1.100-
192.168.1.120。
3.名称解析组件
名称解析组件充当专用网络上其它计算机的DNS服务器。当NAT服务器接受到专网上客户机的DNS请求时,它会将该请求转发到指定的Internet上的DNS服务器,并将响应返回给专用网络上的计算机。
一、配置服务器网卡
(1)在服务器上安装两块网卡,安装完毕后,"网络和拨号连接"文件夹中会出现两个连接:本地连接和本地连接2,为了方便操作,我们将这两个连接分别改名为“内网连接”和“校园网连接”。其中“内网连接”连接到内部网络的交换机端口,内网的所有计算机都连接在这个交换机上组成一个小型的局域网;“校园网连接”连接到校园网的交换机端口上,这个交换机连接到网络中心,从而连接到Internet。
(2)配置“内网连接”网卡:IP地址设置为192.168.1.1,子网掩码设置为255.255.255.0,默认网关不配置,其它采用默认值。
(3)配置“校园网连接”网卡:IP地址设置为172.18.10.55(由网络中心分配),子网掩码设置为255.255.255.0,默认网关设置为172.18.10.254(由网络中心分配),DNS设置为172.18.1.1。在配置“校园网连接”网卡时注意,如果这时不配置默认网关,那就必须在路由和远程访问中配置默认的静态路由条目(后述)。
二、配置服务器NAT地址转换
(1)启动“路由和远程访问”:“开始”菜单->“程序”->“管理工具”->“路由和远程访问”。默认状态下,将本地计算机列出为服务器要添加其他服务器,请在控制台目录树中,右键单击“服务器状态”,然后单击“添加服务器”。
(2)右击要启用的服务器(这儿是本地服务器),然后单击“配置并启用路由和远程访问”,启动配置向导。
(3)跳过欢迎页面,下一步进入向导的公共设置页面。公共设置页面共有5项供选择:Internet连接服务器、远程访问服务器、虚拟专用网络(VPN)服务器、网络路由器、手动配置服务器。我们这儿选择“Internet连接服务器”,下一步。
(4)进入Internet连接服务器设置页面,有两项选择:设置Internet连接共享和设置有网络地址转换(NAT)路由协议的路由器。选择“设置有网络地址转换(NAT)路由协议的路由器”,下一步。
(5)在Internet连接页面,有两项选择:使用选择的Internet连接和创建一个新的请求拨号Internet连接。选择“使用Internet连接”,在下面的Internet列表中选项“校园网连接”,我们将让客户机通过这条连接访问Internet。下一步。

(6)完成向导,系统将启动路由和远程访问功能并完成初始化工作。

(7)如果我们在配置服务器网卡时已经给“校园网连接”配置了默认的网关,那么我们服务器的配置就完成了。如果没有配置,我们需要再配置一下静态路由。

(8)配置静态路由:“服务器”->“IP路由选择”->“静态路由”。右击“静态路由”,选择“静态路由”快捷菜单,调出“静态路由”配置对话框。在接口中连接“校园网连接”,目标与子网掩码均填写“0.0.0.0”,网关填写“172.18.10.254”,跃点数填写“1”。“确定”退出

三、客户端设置

客户端的设置比较简单,主要是IP地址设置。

(一)自动获得取IP地址

“控制面板”->“网络”,打开“网络”对话框。将网卡的TCP/IP属性设置为自动获得IP地址,自动获得DNS服务器地址。确定退出。

(二)人工设置IP地址

将计算机的地址设置为“192.168.1.2”,子网掩码为“255.255.255.0”,网关为“192.168.1.1”,DNS服务器地址“172.18.1.1”,这儿也可以设置其它的DNS地址,不必一定要设置个地址的。确定退出。

(三)因为NAT服务器使用了自动分配地址的机制,因此在人工设置IP地址时要注意不要发生地址冲突。

四、测试连接情况

1、客户机Ping一下NAT服务器,包括ping 192.168.1.1与ping 172.18.10.55

2、客户机Ping一下路由器:ping 172.18.10.254

3、服务器Ping一下客户机,如:ping 192.168.1.2

4、客户机打开IE测试一下网站访问情况,通常不会有什么问题的

栤の柠檬兎 2008-8-7 16:33

NAT------网络地址转换,是通过将专用的网络地址(企业内部网Intranet)转换为公用地址(如互联网Internet),从而对外隐藏了内部管理的IP地址。这样,通过在内部使用非注册的 IP 地址,并将它们转换为一小部分外部注册的 IP 地址,从而减少了IP 地址注册的费用以及节省了目前越来越缺乏的地址空间(即IPV4)。同时,这也隐藏了内部网络结构,从而降低了内部网络受到攻击的风险。

NAT功能通常被集成到路由器、防火墙、单独的NAT设备中,当然,现在比较流行的操作系统或其他软件(主要是代理软件,如WINROUTE),大多也有着NAT的功能。NAT设备(或软件)维护一个状态表,用来把内部网络的私有IP地址映射到外部网络的合法IP地址上去。每个包在NAT设备(或软件)中都被翻译成正确的IP地址发往下一级。与普通路由器不同的是,NAT设备实际上对包头进行修改,将内部网络的源地址变为NAT设备自己的外部网络地址,而普通路由器仅在将数据包转发到目的地前读取源地址和目的地址。

NAT分为三种类型:表态NAT(staticNAT)、NAT池(pooledNAT)和商品NAT(PAT)。其中静态NAT将内部网络中的每个主机都被永久映射成外部网络中的某个合法的地址,而NAT池则是在外部网络中定义了一系列的合法地址,采用动态分配的方法映射到内部网络,端口NAT则是把内部地址映射到外部网络的一个IP地址的不同端口上。

飞蛾扑火 2008-8-21 15:39

这个问题不错啊 你会想到这方面的问题就很不错
NAT分静态映射 动态映射和端口映射3类 静态映射就是内网和外网IP 一一对应的映射 动态映射是范围到范围的对应 当然外网IP是先到先得的 而端口影射则有一个复用的概念 所谓复用 就是把一个IP分给多个用户使用 一般来说一个IP可以拆分成4000条TCP进程 所以理论上即使NAT池里只有1个IP地址 最多也可以承载4000个用户同时使用

胆子忒大 2008-9-3 14:13

配置脚本

#

sysname RouterA

#

radius scheme system

#

domain system

#

acl number 2000 /配置允许进行NAT转换的内网地址段/

rule 0 permit source 192.168.0.0 0.0.0.255

rule 1 deny

#

interface Ethernet0/0

ip address 202.1.1.2 255.255.255.248

nat outbound 2000

#

interface Ethernet0/1

ip address 192.168.0.1 255.255.255.0 /内网网关/

#

interface NULL0

#

ip route-static 0.0.0.0 0.0.0.0 202.1.1.1 preference 60 /配置默认路由/

#

user-interface con 0

user-interface vty 0 4

#

return







配置脚本

#

sysname RouterA

#

nat address-group 0 202.1.1.3 202.1.1.6 /用户NAT的地址池/

#

radius scheme system

#

domain system

#

acl number 2000 /配置允许进行NAT转换的内网地址段/

rule 0 permit source 192.168.0.0 0.0.0.255

rule 1 deny

#

interface Ethernet0/0

ip address 202.1.1.2 255.255.255.248

nat outbound 2000 address-group 0 /在出接口上进行NAT转换/

#

interface Ethernet0/1

ip address 192.168.0.1 255.255.255.0 /内网网关/

#

interface NULL0

#

ip route-static 0.0.0.0 0.0.0.0 202.1.1.1 preference 60 /配置默认路由/

#

user-interface con 0

user-interface vty 0 4

#

return



5.2.4 对外提供ftp,www等服务
以www服务为例,除了5.2.1和5.2.2的配置,公网接口需要增加如下配置:



[Quidway-Ethernet0/0]nat server protocol tcp global 202.1.1.2 www inside 192.168.0.2 www



注意:如果需要其他用户可以ping通内部对外提供服务的服务器,必须增加如下配置:

[Router-Ethernet1]nat server protocol icmp global 202.1.1.2 inside 192.168.0.2



注意:内部用户不能使用公网地址来访问内部服务器,必须使用内网地址访问.

如上例子:192.168.0.0/24网段的用户,不能访问[url]http://202.1.1.2[/url],而只能访问[url]http://192.168.0.2[/url]



配置脚本

#

sysname RouterA

#

radius scheme system

#

domain system

#

acl number 2000 /配置允许进行NAT转换的内网地址段/

rule 0 permit source 192.168.0.0 0.0.0.255

rule 1 deny

#

interface Ethernet0/0

ip address 192.168.0.1 255.255.255.0 /内网网关/

nat outbound 2000

#

interface Serial0/0

ip address 202.1.1.2 255.255.255.252 /公网出口/

nat outbound 2000 /在出接口上进行NAT转换/

#

interface Serial0/1

ip address 61.1.1.2 255.255.255.252 /公网出口/

nat outbound 2000

#

interface NULL0

#

ip route-static 0.0.0.0 0.0.0.0 202.1.1.1 preference 60 /配置默认路由/

ip route-static 0.0.0.0 0.0.0.0 61.1.1.1 preference 60 /配置默认路由/

#

user-interface con 0

user-interface vty 0 4

#

return




【验证】

disp ip rout

Routing Table: public net

Destination/Mask Protocol Pre Cost Nexthop Interface

0.0.0.0/0 STATIC 60 0 61.1.1.1 Serial0/1

202.1.1.1 Serial0/0

61.1.1.0/30 DIRECT 0 0 61.1.1.6 Serial0/1

61.1.1.2/32 DIRECT 0 0 61.1.1.5 Serial0/1

61.1.1.1/32 DIRECT 0 0 127.0.0.1 InLoopBack0

127.0.0.0/8 DIRECT 0 0 127.0.0.1 InLoopBack0

127.0.0.1/32 DIRECT 0 0 127.0.0.1 InLoopBack0

192.168.0.0/24 DIRECT 0 0 192.168.0.1 Ethernet0/0

192.168.0.1/32 DIRECT 0 0 127.0.0.1 InLoopBack0

202.1.1.0/30 DIRECT 0 0 202.1.1.6 Serial2/0/0

202.1.1.2/32 DIRECT 0 0 202.1.1.5 Serial2/0/0

202.1.1.1/32 DIRECT 0 0 127.0.0.1 InLoopBack0



disp nat session

There are currently 2 NAT sessions:

Protocol GlobalAddr Port InsideAddr Port DestAddr Port

6 202.1.1.2 12288 192.168.0.2 1036 200.1.1.1 23

VPN: 0, status: 11, TTL: 24:00:00, Left: 23:59:55



6 61.1.1.2 12289 192.168.0.3 1035 200.1.1.1 23

VPN: 0, status: 11, TTL: 00:01:00, Left: 00:00:21



【提示】

1、 通过在路由上配置两条等值路由来实现负载分担

2、 如果只想实现NAT的主备用,只需要修改两条默认路由为不同的优先级即可

pppoe007 2008-9-5 11:03

没钱了,说句话挣钱,为什么要这样

oneandone 2008-9-17 13:40

好像没人在解答楼主的问题哦!?<;+enu:":

庭房小屋 2008-10-18 15:50

我拿NE系列的路由器给你举例子.
1.先建立NAT地址池,这个池子里就是SP给你的公网地址,对应你的192的地址.

#
nat address-group 1 210.75.198.31 210.75.198.36
#

注:可以定义多个地址池

2.在连接内网的接口上定义私有地址段.

interface Ethernet4/2/0
ip address 210.75.198.1 255.255.255.0
nat outbound 2001 address-group 2 (这里是在做NAT时附加的ACL表,用来控制内部什么地址能被影射,什么地址可以用什么服务之类的.)

nat server protocol tcp global 210.75.198.185 www inside 10.11.110.14 www
nat server protocol tcp global 210.75.198.184 www inside 10.11.110.13 www
nat server protocol tcp global 210.75.198.153 www inside 10.11.105.83 www
nat server protocol tcp global 210.75.198.70 www inside 10.11.2.93 www

上面这些就是对应公网地址的私有地址. CISCO的要分outside inside 华为的不用. ^^

麽麽茶 2008-10-23 17:14

NAT分静态映射 动态映射和端口映射3类 静态映射就是内网和外网IP 一一对应的映射 动态映射是范围到范围的对应 当然外网IP是先到先得的 而端口影射则有一个复用的概念 所谓复用 就是把一个IP分给多个用户使用 一般来说一个IP可以拆分成4000条TCP进程 所以理论上即使NAT池里只有1个IP地址 最多也可以承载4000个用户同时使用
页: [1] 2
查看完整版本: 求助于Juniper路由器高手,关于NAT地址池