01-NAT配置
本章节下载: 01-NAT配置 (937.50 KB)
2.17.1 内网用户通过NAT地址访问外网(静态地址转换)配置举例
2.17.2 内网用户通过NAT地址访问外网(地址不重叠)配置举例
2.17.3 相同VPN实例内用户通过NAT地址互访配置举例
2.17.5 外网用户通过域名访问内网服务器(地址不重叠)配置举例
2.18 NAT典型配置举例(使用CGN单板提供NAT功能)
2.18.1 内网用户通过NAT地址访问外网(静态地址转换)配置举例
2.18.2 内网用户通过NAT地址访问外网(地址不重叠)配置举例
2.18.6 PPPoE用户认证与NAT联动支持板间热备配置举例
2.18.8 PPPoE用户认证增量端口块上报RADIUS服务器配置举例
本文中的“CGN单板”指具有CGN功能的单板,即IM-MSUX单板。
NAT(Network Address Translation,网络地址转换)是将IP数据报文头中的IP地址转换为另一个IP地址的过程。在实际应用中,NAT主要应用在连接两个网络的边缘设备上,用于实现允许内部网络用户访问外部公共网络以及允许外部公共网络访问部分内部网络资源(例如内部服务器)的目的。
NAT基本概念如下:
· NAT设备:配置了NAT功能的连接内部网络和外部网络的边缘设备。
· NAT接口:NAT设备上应用了NAT相关配置的接口。
· NAT地址:用于进行地址转换的公网IP地址,与外部网络路由可达,可静态指定或动态分配。
· NAT表项:NAT设备上用于记录网络地址转换映射关系的表项。关于NAT表项的详细介绍请参见“1.6 NAT表项”。
· Easy IP功能:NAT转换时直接使用设备上接口的IP地址作为NAT地址。设备上接口的地址可静态指定或通过DHCP等协议动态获取。
当内部网络访问外部网络的报文经过NAT设备时,NAT设备会用一个合法的公网地址替换原报文中的源IP地址,并对这种转换进行记录;之后,当报文从外网侧返回时,NAT设备查找原有的记录,将报文的目的地址再替换回原来的私网地址,并转发给内网侧主机。这个过程对于私网侧或公网侧设备透明。
图1-1 NAT基本工作过程示意图
如图1-1所示,一台NAT设备连接内网和外网,连接外网的接口为NAT接口,当有报文经过NAT设备时,NAT的基本工作过程如下:
(1) 当内网用户主机(192.168.1.3)向外网服务器(1.1.1.2)发送的IP报文通过NAT设备时,NAT设备查看报文的IP头内容,发现该报文是发往外网的,则将其源IP地址字段的内网地址192.168.1.3转换成一个可路由的外网地址20.1.1.1,并将该报文发送给外网服务器,同时在NAT设备上建立表项记录这一映射。
(2) 外网服务器给内网用户发送的应答报文到达NAT设备后,NAT设备使用报文信息匹配建立的表项,然后查找匹配到的表项记录,用内网私有地址192.168.1.3替换初始的目的IP地址20.1.1.1。
上述的NAT过程对终端(如图中的Host和Server)来说是透明的。对外网服务器而言,它认为内网用户主机的IP地址就是20.1.1.1,并不知道存在192.168.1.3这个地址。因此,NAT“隐藏”了企业的私有网络。
报文经过NAT设备时,在NAT接口上仅进行一次源IP地址转换或一次目的IP地址转换。对于内网访问外网的报文,在出接口上进行源IP地址转换;对于外网访问内网的报文,在入接口上进行目的地址IP地址转换。
报文经过NAT设备时,在NAT接口上同时进行一次源IP地址转换和一次目的IP地址转换。对于内网访问外网的报文,在出接口上同时进行源IP地址和目的IP地址的转换;对于外网访问内网的报文,同时在入接口上进行目的地址IP地址和源IP地址的转换。这种方式常用于支持内网用户主动访问与之地址重叠的外网资源。
NAT hairpin功能用于满足位于内网侧的用户之间或内网侧的用户与服务器之间通过NAT地址进行访问的需求。开启NAT hairpin的内网侧接口上会对报文同时进行源地址和目的地址的转换。它支持两种组网模式:
· P2P:位于内网侧的用户之间通过动态分配的NAT地址互访。内网各主机首先向外网服务器注册自己的内网地址信息,该地址信息为外网侧出方向地址转换的NAT地址,然后内网主机之间通过使用彼此向外网服务器注册的外网地址进行互访。
· C/S:位于内网侧的用户使用NAT地址访问内网服务器。NAT在内网接口上同时转换访问内网服务器的报文的源和目的IP地址,其中,目的IP地址转换通过匹配某外网接口上的内部服务器配置来完成,源地址转换通过匹配内部服务器所在接口上的出方向动态地址转换或出方向静态地址转换来完成。
一般情况下,DNS(Domain Name System,域名系统)服务器和访问私网服务器的用户都在公网,通过在NAT设备的公网接口上配置内部服务器,可以将公网地址、端口等信息映射到私网内的服务器上,使得公网用户可以通过内部服务器的域名或公网地址来访问内部服务器。但是,如图1-2所示,如果DNS服务器在公网,私网用户希望通过域名来访问私网的Web服务器,则会由于DNS服务器向私网用户发送的响应报文中包含的是私网服务器的公网地址,而导致收到响应报文的私网用户无法利用域名访问私网服务器。通过在设备上配置DNS mapping可以解决该问题。
图1-2 NAT DNS mapping工作示意图
NAT DNS mapping功能是指,通过配置“域名+公网IP地址+公网端口号+协议类型”的映射表,建立内部服务器域名与内部服务器公网信息的对应关系。在配置了NAT的接口上,设备检查接收到的DNS响应报文,根据报文中的域名查找用户配置的DNS mapping映射表,并根据表项内的“公网地址+公网端口+协议类型”信息查找内部服务器地址映射表中该信息对应的私网地址,替换DNS查询结果中的公网地址。这样,私网用户收到的DNS响应报文中就包含了要访问的内部服务器的私网地址,也就能够使用内部服务器域名访问同一私网内的内部服务器。
在实际应用中,我们可能希望某些内部网络的主机可以访问外部网络,而某些主机不允许访问;或者希望某些外部网络的主机可以访问内部网络,而某些主机不允许访问。即NAT设备只对符合要求的报文进行地址转换。
NAT设备可以利用ACL(Access Control List,访问控制列表)来对地址转换的使用范围进行控制,通过定义ACL规则,并将其与NAT配置相关联,实现只对匹配指定的ACL permit规则的报文才进行地址转换的目的。而且,NAT仅使用规则中定义的源IP地址、源端口号、目的IP地址、目的端口号、传输层协议类型、用户组和VPN实例这几个元素进行报文匹配,忽略其它元素。
静态地址转换是指外部网络和内部网络之间的地址映射关系由配置确定,该方式适用于内部网络与外部网络之间存在固定访问需求的组网环境。静态地址转换支持双向互访:内网用户可以主动访问外网,外网用户也可以主动访问内网。
动态地址转换是指内部网络和外部网络之间的地址映射关系在建立连接的时候动态产生。该方式通常适用于内部网络有大量用户需要访问外部网络的组网环境。动态地址转换存在两种转换模式:
NO-PAT(Not Port Address Translation)模式下,一个外网地址同一时间只能分配给一个内网地址进行地址转换,不能同时被多个内网地址共用。当使用某外网地址的内网用户停止访问外网时,NAT会将其占用的外网地址释放并分配给其他内网用户使用。
该模式下,NAT设备只对报文的IP地址进行NAT转换,同时会建立一个NO-PAT表项用于记录IP地址映射关系,并可支持所有IP协议的报文。
PAT(Port Address Translation)模式下,一个NAT地址可以同时分配给多个内网地址共用。该模式下,NAT设备需要对报文的IP地址和传输层端口同时进行转换,且只支持TCP、UDP和ICMP(Internet Control Message Protocol,互联网控制消息协议)查询报文。
图1-3 PAT基本原理示意图
如图1-3所示,三个带有内网地址的报文到达NAT设备,其中报文1和报文2来自同一个内网地址但有不同的源端口号,报文1和报文3来自不同的内网地址但具有相同的源端口号。通过PAT映射,三个报文的源IP地址都被转换为同一个外网地址,但每个报文都被赋予了不同的源端口号,因而仍保留了报文之间的区别。当各报文的回应报文到达时,NAT设备仍能够根据回应报文的目的IP地址和目的端口号来区别该报文应转发到的内部主机。
采用PAT方式可以更加充分地利用IP地址资源,实现更多内部网络主机对外部网络的同时访问。
目前,PAT支持如下地址转换模式:
· Endpoint-Independent Mapping(不关心对端地址和端口转换模式):只要是来自相同源地址和源端口号的报文,不论其目的地址是否相同,通过PAT映射后,其源地址和源端口号都被转换为同一个外部地址和端口号,该映射关系会被记录下来并生成一个EIM表项;并且NAT设备允许所有外部网络的主机通过该转换后的地址和端口来访问这些内部网络的主机。这种模式可以很好的支持位于不同NAT网关之后的主机进行互访。
· Connection-Dependent Mapping(关心对端地址和端口的非共享转换模式):来自同一源地址和源端口号并且去往特定目的地址和端口号的报文,通过PAT映射后,其源地址和源端口号都被转换为同一个外部地址和端口号。同一源地址和源端口号并且去往不同目的地址和端口号的报文,通过PAT映射后,其源地址和源端口号被转换为不同的外部地址和端口号。与Endpoint-Independent Mapping模式不同的是,这种模式安全性好,即NAT设备只允许这些目的地址对应的外部网络的主机可以通过该转换后的地址和端口来访问这些内部网络的主机。
在实际应用中,内网中的服务器可能需要对外部网络提供一些服务,例如给外部网络提供Web服务,或是FTP服务。这种情况下,NAT设备允许外网用户通过指定的NAT地址和端口访问这些内部服务器,NAT内部服务器的配置就定义了NAT地址和端口与内网服务器地址和端口的映射关系。
如图1-4所示,外部网络用户访问内部网络服务器的数据报文经过NAT设备时,NAT设备将报文的目的地址与接口上的NAT内部服务器配置进行匹配,并将匹配上的访问内部服务器的请求报文的目的IP地址和端口号转换成内部服务器的私有IP地址和端口号。当内部服务器回应该报文时,NAT设备再根据已有的地址映射关系将回应报文的源IP地址和端口号转换成外网IP地址和端口号。
端口块方式是一种基于端口范围的PAT动态地址转换,即一个私网IP地址在一个时间段内独占一个公网IP地址的某个端口块。例如:假设私网IP地址10.1.1.1独占公网IP地址202.1.1.1的一个端口块10001~10256,则该私网IP向公网发起的所有连接,源IP地址都将被转换为同一个公网IP地址202.1.1.1,而源端口将被转换为端口块10001~10256之内的一个端口。
端口块方式包括静态映射和动态映射两种,主要应用在NAT444或DS-Lite网络中。
端口块静态映射是指,NAT网关设备根据配置自动计算私网IP地址到公网IP地址、端口块的静态映射关系,并创建静态端口块表项。当私网IP地址成员中的某个私网IP地址向公网发起新建连接时,根据私网IP地址匹配静态端口块表项,获取对应的公网IP地址和端口块,并从端口块中动态为其分配一个公网端口,对报文进行地址转换。
配置端口块静态映射时,需要创建一个端口块组,并在端口块组中配置私网IP地址成员、公网IP地址成员、端口范围和端口块大小。假设端口块组中每个公网IP地址的可用端口块数为m(即端口范围除以端口块大小),则端口块静态映射的算法如下:按照从小到大的顺序对私网IP地址成员中的所有IP地址进行排列,最小的m个私网IP地址对应最小的公网IP地址及其端口块,端口块按照起始端口号从小到大的顺序分配;次小的m个私网IP地址对应次小的公网IP地址及其端口块,端口块的分配顺序相同;依次类推。
在NAT与BRAS联动的场景中,用户上线成功后,设备将遍历所有接口上的地址转换配置,当用户流量与某接口的地址转换配置中的ACL规则相匹配时,为该用户分配公网地址以及端口块,并创建动态端口块表项。用户下线后,回收为其分配的端口块资源,删除相应的动态端口块表项。
其他场景中,当内网用户向公网发起连接时,首先根据动态地址转换中的ACL规则进行过滤,决定是否需要进行源地址转换。对于需要进行源地址转换的连接,当该连接为该用户的首次连接时,从所匹配的动态地址转换配置引用的NAT地址组中获取一个公网IP地址,从该公网IP地址中动态分配一个端口块,创建动态端口块表项,然后从端口块表项中动态分配一个公网端口,进行地址转换。对该用户后续连接的转换,均从生成的动态端口块表项中分配公网端口。当该用户的所有连接都断开时,回收为其分配的端口块资源,删除相应的动态端口块表项。
端口块动态映射支持增量端口块分配。当为某私网IP地址分配的端口块资源耗尽(端口块中的所有端口都被使用)时,如果该私网IP地址向公网发起新的连接,则无法再从端口块中获取端口,无法进行地址转换。此时,如果预先在相应的NAT地址组中配置了增量端口块数,则可以为该私网IP地址分配额外的端口块,进行地址转换。
NAT设备处理一个连接的首报文时便确定了相应的地址转换关系,并同时创建会话表项,该会话表项中添加了NAT扩展信息(例如接口信息、转换方式)。会话表项中记录了首报文的地址转换信息。这类经过NAT处理的会话表项,也称为NAT会话表项。
当该连接的后续报文经过NAT设备时,将与NAT会话表项进行匹配,NAT设备从匹配到的会话表项中得到首报文的转换方式,并根据首报文的转换方式对后续报文进行处理。后续报文方向与首报文相同时,源和目的的转换方式与首报文相同;方向相反时,转换方式与首报文相反。即,如果首报文转换了源地址,则后续报文需要转换目的地址;如果首报文转换了目的地址,则后续报文需要转换源地址。
NAT会话表项的更新和老化由会话管理模块维护,关于会话管理的相关介绍请参见“安全配置指导”中的“会话管理”。
如果NAT设备上开启了Endpoint-Independent Mapping模式,则在PAT方式的动态地址转换过程中,会首先创建一个NAT会话表项,然后创建一个用于记录地址和端口的转换关系(内网地址和端口<-->NAT地址和端口)的EIM三元组表项,该表项有以下两个作用:
· 保证后续来自相同源地址和源端口的新建连接与首次连接使用相同的转换关系。
· 允许外网主机向NAT地址和端口发起的新建连接根据EIM表项进行反向地址转换。
该表项在与其相关联的所有NAT会话表项老化后老化。
在NO-PAT方式进行源地址的动态转换过程中,NAT设备首先创建一个NAT会话表项,然后建立一个NO-PAT表项用于记录该转换关系(内网地址<-->NAT地址)。除此之外,在NAT设备进行ALG处理时,也会触发创建NO-PAT表项。NAT ALG的相关介绍请参见“1.8 NAT支持ALG”。
NO-PAT表项有以下两个作用:
· 保证后续来自相同源地址的新建连接与首次连接使用相同的转换关系。
· 允许满足指定条件的主机向NAT地址发起的新建连接根据NO-PAT表项进行反向地址转换。
该表项在与其相关联的所有NAT会话表项老化后老化。
端口块表项记录1个用户在网关转换前的私网IP地址、转换后对应的公网IP地址及其端口块。端口块表项分为静态端口块表项和动态端口块表项。关于端口块表项的详细介绍,请参见“1.5.4 端口块方式”。
支持VPN实例的NAT允许VPN实例内的用户访问外部网络,同时允许分属相同VPN实例的用户互访。例如,当某VPN实例内的用户经过NAT设备访问外部网络时,NAT将内部网络主机的IP地址和端口替换为NAT地址和端口,同时还记录了用户的VPN实例信息(如VPN实例名称)。外部网络的回应报文到达NAT设备时,NAT将外部网络地址和端口还原为内部网络主机的IP地址和端口,同时可得知该回应报文应该转发给哪一个VPN实例内的用户。另外,NAT还可利用外部网络地址所携带的VPN实例信息,支持相同VPN实例之间的互访。
同时,NAT内部服务器也支持VPN实例,这给外部网络提供了访问VPN实例内服务器的机会。例如,VPN1内提供Web服务的主机地址是10.110.1.1,可以使用202.110.10.20作为Web服务器的外部地址,Internet的用户使用202.110.10.20的地址就可以访问到VPN1提供的Web服务。
ALG(Application Level Gateway,应用层网关)主要完成对应用层报文的解析和处理。通常情况下,NAT只对报文头中的IP地址和端口信息进行转换,不对应用层数据载荷中的字段进行分析和处理。然而对于一些应用层协议,它们的报文的数据载荷中可能包含IP地址或端口信息,这些载荷信息也必须进行有效的转换,否则可能导致功能不正常。
例如,FTP(File Transfer Protocol,文件传输协议)应用由FTP客户端与FTP服务器之间建立的数据连接和控制连接共同实现,而数据连接使用的地址和端口由控制连接协商报文中的载荷信息决定,这就需要ALG利用NAT的相关转换配置完成载荷信息的转换,以保证后续数据连接的正确建立。
CGN(Carrier Grade NAT,运营商级网络地址转换),也称LSN(Large-scale NAT,大规模网络地址转换)。传统NAT多部署在CPE(Customer Premises Equipment,用户侧设备)上,实现少量用户地址的转换。而CGN部署在运营商网络中,通过将承担CGN功能的单板插在其他功能(如BRAS)的设备上,实现大量用户的地址转换,在支持并发用户数、性能、溯源等方面有很大提升。
CGN有多种应用场景,如NAT444、DS-Lite等。
按CGN单板的部署位置可以分为集中式部署和分布式部署:
· 集中式部署指的是将提供CGN功能的设备部署在接近或位于城域网核心的位置,通常部署在CR(Core Router,核心路由器)上,如图1-5和图1-6所示,可以在CR上旁挂插有CGN单板的设备,也可以将CGN单板插在CR上。集中式部署方式比较适合用于用户/流量都比较少的场景下。
图1-5 集中式部署CGN(CR上旁挂插有CGN单板的设备)
图1-6 集中式部署CGN(CR上插入CGN单板)
· 分布式部署相对于集中式部署的网络位置而言,部署在接近或位于城域网边缘的位置,通常部署在BRAS设备上,如图1-7所示,通过将CGN单板插在BRAS设备上实现。分布式部署方式比较适合用在用户/流量都比较多的场景下。
为了避免由于设备或链路故障导致的业务中断,有两种CGN备份方式可供选择,从而保证设备工作的可用性和业务运行的可靠性,提高运营商网络的稳定性。
集中式备份分布式CGN是指由集中部署的CGN对分布式部署的CGN进行备份,在分布式部署的CGN无法正常工作时,提供地址转换服务。
如图1-8所示,在集中式备份分布式CGN的场景中,BRAS设备负责处理用户上线,完成用户认证、授权和计费等功能。CR设备主要负责数据分组和转发。BRAS设备上的CGN单板正常工作时,流量在BRAS设备上的CGN单板进行地址转换;当BRAS上的CGN单板故障时,流量切换到CR设备上的CGN单板进行地址转换。
图1-8 集中式备份分布式CGN组网图(BRAS上的CGN单板正常)
设备支持如下方式将流量切换到CR设备上的CGN单板进行地址转换:
· 路由方式实现流量切换。如图1-9所示,在BRAS上通过路由方式实现流量切换。正常情况下,BRAS上的QoS策略将流量引到本设备的CGN单板进行地址转换。当BRAS上的CGN单板故障时,QoS策略将不再生效,BRAS根据路由表将流量发送到CR设备。在CR上,再通过QoS策略将流量引到CGN单板进行地址转换。
图1-9 集中式备份分布式CGN组网图(路由方式实现流量切换)
· 使用GRE隧道方式实现流量切换。如图1-10所示,在BRAS和CR间使用GRE隧道实现流量切换。正常情况下,BRAS上的QoS策略将流量重定向到本设备的备份组,由备份组中的主节点(主节点为CGN单板)进行地址转换。当BRAS上的CGN单板故障时,通过QoS策略将流量重定向到下一跳,流量经过GRE隧道发送到CR。在CR上,再通过QoS策略将流量引到CGN单板进行地址转换。
图1-10 集中式备份分布式CGN组网图(使用GRE隧道实现流量切换)
使用路由方式实现流量切换,当BRAS上的CGN单板故障时,私网地址路由会进入城域网,为了避免对城域网中的业务造成影响,需要对私网地址进行全网统一规划。使用GRE隧道实现流量切换可避免上述问题的产生,但需要在BRAS上配置专门的GRE隧道以及引流到CR的QoS策略。关于GRE隧道的详细介绍,请参见“三层技术-IP业务配置指导”中的“GRE”。
BRAS上发生故障的CGN单板恢复正常工作时:
· 在路由方式实现流量切换的场景中,BRAS上的QoS策略重新生效,将流量引到本设备的CGN单板上进行地址转换。
· 在使用GRE隧道实现流量切换的场景中,BRAS上的QoS策略中,将流量重定向到备份组的流行为重新生效,将流量重定向到CR的流行为不再生效,流量在BRAS上备份组的主节点(主节点为CGN单板)进行地址转换。
CGN板间备份指的是同一台设备上多块CGN单板之间进行备份。CGN板间备份目前仅支持热备方式:既备份端口块表项,也备份会话表项。主备倒换时,公私网NAT关系不会发生变化,不需要重建会话。
使用备份组可以实现集中式部署或分布式部署的CGN板间1:1备份、1+1备份、N:1备份和N+1备份。关于备份组的详细介绍,请参见“可靠性配置指导”中的“备份组”。
以在BRAS设备上通过两块CGN单板实现板间1:1备份为例,如图1-11所示,BRAS设备上的两块CGN单板形成备份组,正常情况下,由备份组中的主节点CGN 1处理NAT业务(通过指定处理基于会话业务的备份组)。如图1-12所示,当主节点出现故障时,由备节点CGN 2处理NAT业务。
图1-11 CGN板间备份组网图(CGN1单板正常)
图1-12 CGN板间备份组网图(CGN1单板故障)
NAT444是运营商网络部署NAT的整体解决方案,它基于NAT444网关,结合AAA服务器、日志服务器等配套系统,提供运营商级的NAT,并支持用户溯源等功能。在众多IPv4向IPv6网络过渡的技术中,NAT444仅需在运营商侧引入二次NAT,对终端和应用服务器端的更改较小,并且NAT444通过端口块分配方式解决用户溯源等问题,因此成为了运营商的首选IPv6过渡方案。
NAT444解决方案分为集中部署和分布部署两种。
通过在CR设备上安装NAT业务板或者旁挂NAT444设备来实现NAT444。如图1-13所示,用户访问外部网络时,CPE设备上进行第一次NAT转换,然后在BRAS上完成AAA认证和私网地址的分配,认证通过后,用户发起访问外网的报文会在NAT444网关上进行第二次NAT转换。
图1-13 NAT444集中部署组网图
通过在BRAS设备上安装NAT业务板实现NAT444,此种部署方式需要配置BRAS联动功能。如图1-14所示。配置NAT444网关与BRAS联动(通过在认证ISP域中指定具体的用户地址类型),用户通过AAA认证并分配得到私网地址之后,NAT444网关会立即为该用户分配公网地址以及端口块,并将用户的私网IP地址、分配的公网地址及该端口块的映射关系通知给BRAS(如果NAT444网关上可分配的公网资源已耗尽,BRAS会强制用户下线,也不会对用户进行计费)。BRAS记录该地址映射关系,并将这个映射关系上报给AAA服务器。之后,该用户访问外部网络时直接使用NAT444网关已经分配的公网地址和端口块。通过此联动功能,AAA服务器能够获得并统一维护所有用户的地址映射关系,提供更便捷的用户溯源服务。
目前,仅支持PPPoE和IPoE用户的业务与NAT444网关联动。
图1-14 NAT444分布式部署组网图
DS-Lite(Dual Stack Lite,轻量级双协议栈)技术综合了IPv4 over IPv6隧道技术和NAT技术,利用隧道技术实现通过IPv6网络连接隔离的IPv4网络。利用NAT技术实现不同的用户网络共享相同的IPv4地址空间,减缓IPv4地址的耗尽速度。关于DS-Lite隧道的详细介绍,请参见“三层技术-IP业务配置指导”中的“IPv4 over IPv6隧道”。
在DS-Lite网络中,B4设备作为用户网络的网关负责执行隧道报文的封装和解封装,AFTR设备作为隧道端点设备和NAT网关负责执行隧道报文的封装、解封装以及对解封装后用户网络报文的源IPv4地址进行转换。
图1-15 DS-Lite网络组网图
在该组网环境下,AFTR设备可基于B4的IPv6地址对B4分配端口块,以B4为网关的私网主机共用该B4的端口块访问IPv4网络。该方式支持基于端口块的用户溯源。
NAT通用配置限制和指导如下:
· NAT只对匹配指定的ACL permit规则的报文才进行地址转换,匹配时仅关注ACL规则中定义的源IP地址、源端口号、目的IP地址、目的端口号、传输层协议类型、用户组和VPN实例,不关注ACL规则中定义的其它元素。
· 若接口上同时存在普通NAT静态地址转换、普通NAT动态地址转换、内部服务器、NAT端口块静态映射、NAT端口块动态映射和DS-Lite B4地址转换的配置,则在地址转换过程中,它们的优先级从高到低依次为:
a. 内部服务器。
b. 普通NAT静态地址转换。
c. NAT端口块静态映射。
d. NAT端口块动态映射和普通NAT动态地址转换,系统在处理IPv4报文时对二者不做区分,统一按照ACL编号由大到小的顺序匹配。
e. DS-Lite B4地址转换的处理优先级与NAT端口块动态映射和NAT动态地址转换处于同一个级别,只不过DS-Lite B4地址转换处理的是IPv6报文。
· 应用NAT后,如果修改QoS策略中ACL的rule规则,不会影响已经NAT处理过的流量,只影响后续的流量。
· 在DS-Lite网络中,请确保DS-Lite隧道物理出接口的MTU值比DS-Lite隧道接口的MTU值至少大40字节(即IPv6基本报文头长度),否则可能导致报文转发失败。
· 对于SPC类单板、CSPC类单板和CMPE-1104单板,不支持在VPN实例下配置NAT功能。
· 当端口容量不大于80G的SPC类单板、CSPC类单板或CMPE-1104单板上的子接口使能QinQ终结功能后,该子接口无法作为NAT出接口。单板的端口容量是指整块单板上所有接口速率的总和,如CSPC-GP24XP2LB单板的端口容量为44G,即2x10G+24x1G。
· 当QoS策略的流量重定向动作切换至重定向到指定的单板,或者从重定向到指定单板切换至其他重定向动作后,需要使用reset ip fast-forwarding cache slot命令清除指定单板上的快速转发表中的信息。
· CSPEX类单板仅支持公网到公网或相同VPN实例内的地址转换。
· SPC类单板、CSPC类单板和CMPE-1104单板仅支持公网到公网的地址转换。
配置BRAS联动功能时,需要注意:
· 目前,支持BRAS联动功能的用户地址类型包括私网IP地址(private-ipv4)、私网双栈地址(private-ds)和轻量级双栈地址(ds-lite)。
· 用户上线后,无法更改NAT端口块配置。只有在所有用户下线后,才能更改NAT端口块配置。
在特定场景下,用于定义地址转换的ACL规则,至少包含以下任意一项规则信息参数,如表2-1所示:
表2-1 特定场景下ACL规则的条件
场景 |
至少包含以下任意一项规则信息参数 |
普通的联动用户接入 |
源IP地址、VPN实例或user-group用户组 |
负载均衡的联动用户接入 |
user-group用户组 |
通过流量触发分配端口块 |
源IP地址、VPN实例、源端口、协议类型或user-group用户组 |
NAT配置任务如下:
(1) 配置接口上的地址转换方式
¡ 配置静态地址转换
¡ 配置动态地址转换
¡ 配置内部服务器
(2) 指定处理NAT业务的slot
有如下两种方式指定处理NAT业务的slot,请选择其中一种进行配置。同一台设备不支持两种方式共存。
对于支持配置本功能的设备,必须在配置了NAT业务的接口上指定提供NAT处理的业务板。
通过配置本功能并结合QoS策略等功能,才能实现在指定的CGN单板处理NAT业务的目的。
(3) (可选)配置集中式备份分布式CGN
a. 配置BRAS上的CGN
b. 配置CR上的CGN
(4) (可选)开启增量端口块映射关系上报功能
(5) (可选)配置NAT hairpin功能
(6) (可选)配置NAT DNS mapping功能
(7) (可选)配置NAT ALG
(8) (可选)配置NAT日志功能
使用CGN单板处理NAT业务的环境中,对于出方向静态地址转换,需要将出方向静态地址转换映射与节点为CGN单板的备份组绑定,否则会导致反向报文地址转换失败。关于备份组的详细介绍,请参见“可靠性配置指导”中的“备份组”。
配置控制地址转换范围的ACL。ACL配置的相关介绍请参见“ACL和QoS配置指导”中的“ACL”。
出方向一对一静态地址转换通常应用在外网侧接口上,用于实现一个内部私有网络地址到一个外部公有网络地址的转换,具体过程如下:
· 对于经过该接口发送的内网访问外网的报文,将其源IP地址与指定的内网IP地址local-ip进行匹配,并将匹配的源IP地址转换为global-ip。
· 对于该接口接收到的外网访问内网的报文,将其目的IP地址与指定的外网IP地址global-ip进行匹配,并将匹配的目的IP地址转换为local-ip。
(1) 进入系统视图。
system-view
(2) 配置出方向一对一静态地址转换映射。
nat static outbound local-ip [ vpn-instance local-vpn-instance-name ] global-ip [ vpn-instance global-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } [ reversible ] ] [ failover-group group-name ]
(3) 进入接口视图。
interface interface-type interface-number
(4) 开启接口上的NAT静态地址转换功能。
nat static enable
缺省情况下,NAT静态地址转换功能处于关闭状态。
出方向网段对网段静态地址转换通常应用在外网侧接口上,用于实现一个内部私有网络到一个外部公有网络的地址转换,具体过程如下:
· 对于经过该接口发送的内网访问外网的报文,将其源IP地址与指定的内网网络地址进行匹配,并将匹配的源IP地址转换为指定外网网络地址之一。
· 对于该接口接收到的外网访问内网的报文,将其目的IP地址与指定的外网网络地址进行匹配,并将匹配的目的IP地址转换为指定的内网网络地址之一。
(1) 进入系统视图。
system-view
(2) 配置出方向网段对网段静态地址转换映射。
nat static outbound net-to-net local-start-address local-end-address [ vpn-instance local-vpn-instance-name ] global global-network { mask-length | mask } [ vpn-instance global-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } [ reversible ] ] [ failover-group group-name ]
(3) 进入接口视图。
interface interface-type interface-number
(4) 开启接口上的NAT静态地址转换功能。
nat static enable
缺省情况下,NAT静态地址转换功能处于关闭状态。
在同时配置了多条动态地址转换的情况下:
· 指定了ACL参数的动态地址转换配置的优先级高于未指定ACL参数的动态地址转换配置。
· 对于指定了ACL参数的动态地址转换配置,其优先级由ACL编号的大小决定,编号越大,优先级越高。
· 在NAT与BRAS联动的场景中,用户上线成功后,设备将按照接口索引从小到大的顺序遍历所有接口上的地址转换配置,流量优先与接口索引较小的地址转换配置中的ACL规则进行匹配,匹配成功后,不再与接口索引较大的地址转换配置中的ACL规则进行匹配。因此,请谨慎配置各接口的地址转换中的ACL规则,避免出现流量匹配错误导致地址转换失败的情况。
· 配置控制地址转换范围的ACL。ACL配置的相关介绍请参见“ACL和QoS配置指导”中的“ACL”。
· 确定是否直接使用接口的IP地址作为转换后的报文源地址。
· 配置根据实际网络情况,合理规划可用于地址转换的公网IP地址组。
· 确定地址转换过程中是否使用端口信息。
出方向动态地址转换通常应用在外网侧接口上,用于实现一个内部私有网络地址到一个外部公有网络地址的转换。
(1) 进入系统视图。
system-view
(2) (可选)配置PAT方式地址转换的模式为Endpoint-Independent Mapping。
nat mapping-behavior endpoint-independent { tcp [ tcp-5-tuple ] | udp [ udp-5-tuple ] } *
缺省情况下,PAT方式地址转换的模式为Connection-Dependent Mapping。
该配置只在定制了三元组模式的设备上适用,且只对出方向动态地址转换的PAT方式起作用。
(3) 创建NAT地址组,并进入NAT地址组视图。
nat address-group group-id
(4) 添加地址成员。
address start-address end-address
缺省情况下,不存在地址成员。
可通过多次执行本命令添加多个地址成员,但是地址成员的地址不能重叠。
(5) (可选)限制分配给协议的端口数量。
port-limit { icmp | tcp | total | udp } number
缺省情况下,不对分配给协议的端口数量做限制。
(6) 退回系统视图。
quit
(7) 进入接口视图。
interface interface-type interface-number
(8) 配置出方向动态地址转换。请至少选择其中一项进行配置。
¡ NO-PAT方式。
nat outbound [ ipv4-acl-number | name ipv4-acl-name ] address-group group-id [ vpn-instance vpn-instance-name ] no-pat [ reversible ]
¡ PAT方式。
nat outbound [ ipv4-acl-number | name ipv4-acl-name ] [ address-group group-id ] [ vpn-instance vpn-instance-name ] [ port-preserved ]
一个接口下可配置多个出方向的动态地址转换。
参数 |
功能 |
address-group |
不指定该参数时,则直接使用该接口的IP地址作为转换后的地址,即实现Easy IP功能 |
no-pat reversible |
在指定该参数,并且已经存在NO-PAT表项的情况下,对于经过该接口收到的外网访问内网的首报文,将其目的IP地址与NO-PAT表项进行匹配,并将目的IP地址转换为匹配的NO-PAT表项中记录的内网地址 |
内部服务器通常配置在外网侧接口上。通过在NAT设备上配置内部服务器,建立一个或多个内网服务器内网地址和端口与外网地址和端口的映射关系,使外部网络用户能够通过配置的外网地址和端口来访问内网服务器。内部服务器可以位于一个普通的内网内,也可以位于一个VPN实例内。
内部服务器可以通过如下配置方式实现。
· 普通内部服务器:将内网服务器的地址和端口映射为外网地址和端口,允许外部网络中的主机通过配置的外网地址和端口访问位于内网的服务器。
· 负载分担内部服务器:在配置内部服务器时,将内部服务器的内网信息指定为一个内部服务器组,组内的多台主机可以共同对外提供某种服务。外网用户向内部服务器指定的外网地址发起应用请求时,NAT设备可根据内网服务器的权重和当前连接数,选择其中一台内网服务器作为目的服务器,实现内网服务器负载分担。
· 基于ACL的内部服务器:普通内部服务器方式必须指定公网地址,基于ACL内部服务器不用指定具体的公网地址,而是指定公网地址的集合,即通过ACL规则匹配过滤的一部分公网地址。对于符合ACL规则的报文,它的目的地址统一转换成相同的内部服务器地址和端口,它是普通内部服务器的扩展。
在配置负载均衡内部服务器时,若配置一个外网地址,N个连续的外网端口号对应一个内部服务器组,或N个连续的外网地址,一个外网端口号对应一个内部服务器组,则内部服务器组的成员个数不能小于N,即同一用户不能通过不同的外网地址或外网端口号访问相同内网服务器的同一服务。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置普通内部服务器。请至少选择其中一项进行配置。
¡ 外网地址单一,未使用外网端口或外网端口单一。
nat server [ protocol pro-type ] global { global-address | current-interface | interface interface-type interface-number } [ global-port ] [ vpn-instance global-vpn-instance-name ] inside local-address [ local-port ] [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } ] [ reversible ]
¡ 外网地址单一,外网端口连续。
nat server protocol pro-type global { global-address | current-interface | interface interface-type interface-number } global-port1 global-port2 [ vpn-instance global-vpn-instance-name ] inside { { local-address | local-address1 local-address2 } local-port | local-address local-port1 local-port2 } [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } ]
¡ 外网地址连续,未使用外网端口或外网端口单一。
nat server protocol pro-type global global-address1 global-address2 [ global-port ] [ vpn-instance global-vpn-instance-name ] inside { local-address | local-address1 local-address2 } [ local-port ] [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } ]
¡ 外网地址连续,外网端口单一。
nat server protocol pro-type global global-address1 global-address2 global-port [ vpn-instance global-vpn-instance-name ] inside local-address local-port1 local-port2 [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } ]
一个接口下可以配置多个普通内部服务器。
(1) 进入系统视图。
system-view
(2) 配置内部服务器组,并进入服务器组视图。
nat server-group group-id
(3) 添加内部服务器组成员。
inside ip inside-ip port port-number [ weight weight-value ]
一个内部服务器组内可以添加多个组成员。
(4) 退回系统视图。
quit
(5) 进入接口视图。
interface interface-type interface-number
(6) 配置负载分担内部服务器。
nat server protocol pro-type global { { global-address | current-interface | interface interface-type interface-number } { global-port | global-port1 global-port2 } | global-address1 global-address2 global-port } [ vpn-instance global-vpn-instance-name ] inside server-group group-id [ vpn-instance local-vpn-instance-name ] [ acl { ipv4-acl-number | name ipv4-acl-name } ]
一个接口下可以配置多个负载分担内部服务器。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 配置基于ACL的内部服务器。
nat server global { ipv4-acl-number | name ipv4-acl-name } inside local-address [ local-port ] [ vpn-instance local-vpn-instance-name ]
一个接口下可以配置多个基于ACL的内部服务器。
NAT端口块地址转换是出方向地址转换,通常配置在外网侧接口上。例如,在NAT444场景中,通过在NAT444网关设备上配置NAT端口块地址转换,可以实现基于端口块的公网IP地址复用,使一个私网IP地址在一个时间段内独占一个公网IP地址的某个端口块。
对于NAT端口块动态映射,必须在NAT地址组中配置端口块参数,以实现基于端口块的地址转换。
(1) 进入系统视图。
system-view
(2) 创建NAT端口块组,并进入NAT端口块组视图。
nat port-block-group group-id
(3) 添加私网地址成员。
local-ip-address start-address end-address
一个端口块组内,可以配置多个私网地址成员,但各私网地址成员之间的IP地址不能重叠。
(4) 添加公网地址成员。
global-ip-pool start-address end-address
一个端口块组内,可以配置多个公网地址成员,但各公网地址成员之间的IP地址不能重叠。
(5) 配置公网地址的端口范围。
port-range start-port-number end-port-number
缺省情况下,公网地址的端口范围为1~65535。
(6) 配置端口块大小。
block-size block-size
缺省情况下,端口块大小为256。
(7) (可选)限制分配给协议的端口数量。
port-limit { icmp | tcp | total | udp } number
缺省情况下,不对分配给协议的端口数量做限制。
(8) 退回系统视图。
quit
(9) 进入接口视图。
interface interface-type interface-number
(10) 配置NAT端口块静态映射。
nat outbound port-block-group group-id
一个接口下可配置多条基于不同端口块组的NAT端口块静态映射。
(11) (可选)请依次执行以下命令配置PAT方式出方向动态地址转换的模式为Endpoint-Independent Mapping。
quit
nat mapping-behavior endpoint-independent [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情况下,PAT方式出方向动态地址转换的模式为Connection-Dependent Mapping。
在IRF组网且NAT与BRAS联动的场景中,建议同时开启NAT端口块热备份功能和会话业务热备份功能(通过session synchronization enable命令),以保证主备倒换时尽可能缩短流量中断的时间。关于会话的详细介绍,请参见“安全配置指导”中的“会话管理”。
(1) 进入系统视图。
system-view
(2) (可选)配置PAT方式地址转换的模式为Endpoint-Independent Mapping。
nat mapping-behavior endpoint-independent { tcp [ tcp-5-tuple ] | udp [ udp-5-tuple ] } *
缺省情况下,PAT方式地址转换的模式为Connection-Dependent Mapping。
(3) 创建NAT地址组,并进入NAT地址组视图。
nat address-group group-id
(4) 添加地址成员。
address start-address end-address
可通过多次执行本命令添加多个地址成员,但是地址成员的地址不能重叠。
(5) (可选)配置端口范围。
port-range start-port-number end-port-number
缺省情况下,端口范围为1~65535。
该配置仅对PAT方式地址转换生效。
(6) (可选)限制分配给协议的端口数量。
port-limit { icmp | tcp | total | udp } number
缺省情况下,不对分配给协议的端口数量做限制。
(7) 配置端口块参数。
port-block block-size block-size [ extended-block-number extended-block-number ]
缺省情况下,未配置NAT地址组的端口块参数。
该配置仅对PAT方式地址转换生效。
(8) 退回系统视图。
quit
(9) 进入接口视图。
interface interface-type interface-number
(10) 配置PAT方式出方向动态地址转换。
nat outbound [ ipv4-acl-number | name ipv4-acl-name ] [ address-group group-id ] [ vpn-instance vpn-instance-name ] [ port-preserved ]
port-preserved参数对NAT端口块动态映射无效。
在NAT与BRAS联动的场景中,用户通过RADIUS认证并分配得到私网地址之后,设备会为其预先分配公网IP和端口块,并创建地址映射关系,然后通过RADIUS报文将上线用户获得的私网IP地址及其对应的公网IP和端口块等信息上报给RADIUS服务器。RADIUS服务器获得用户的地址映射关系后,将这些信息记录到在线用户信息中,以提供用户溯源服务。之后,如果用户向公网发起的连接使用了增量端口块,设备并不会将私网IP地址及其对应的公网IP和增量端口块等信息上报给RADIUS服务器,导致无法对使用增量端口块的用户进行溯源。开启本功能可以避免上述问题的产生。
当存在PPPoE或IPoE在线用户时,无法改变本功能的开启或关闭状态。
(1) 进入系统视图。
system-view
(2) 开启NAT设备将用户私网IP与增量端口块的映射关系上报给RADIUS服务器的功能。
nat extended-port-block report-radius enable
缺省情况下,NAT设备将用户私网IP与增量端口块的映射关系上报给RADIUS服务器的功能处于关闭状态。
DS-Lite B4地址转换配置在外网侧接口上,关联IPv6 ACL控制地址转换范围。
(1) 进入系统视图。
system-view
(2) (可选)配置PAT方式地址转换的模式为Endpoint-Independent Mapping。
nat mapping-behavior endpoint-independent { tcp [ tcp-5-tuple ] | udp [ udp-5-tuple ] } *
缺省情况下,PAT方式地址转换的模式为Connection-Dependent Mapping。
(3) 创建NAT地址组,并进入NAT地址组视图。
nat address-group group-id
(4) 添加地址成员。
address start-address end-address
可通过多次执行本命令添加多个地址成员,但是地址成员的地址不能重叠。
(5) 配置端口范围。
port-range start-port-number end-port-number
缺省情况下,端口范围为1-65535。
该配置仅对PAT方式地址转换生效。
(6) (可选)配置端口块参数。
port-block block-size block-size [ extended-block-number extended-block-number ]
缺省情况下,未配置NAT地址组的端口块参数。
该配置仅对PAT方式地址转换生效。
(7) 退回系统视图。
quit
(8) 进入接口视图。
interface interface-type interface-number
(9) 配置DS-Lite B4端口块映射。
nat outbound ds-lite-b4 { ipv6-acl-number | name ipv6-acl-name } address-group group-id
通过在接口上指定具有NAT处理能力的业务板,使通过该接口的需要进行NAT转换的报文重定向到指定NAT业务板上进行处理,提高了NAT业务处理的性能。
目前除CSPC-CP2LB单板外,其他业务板都可以提供NAT处理。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 指定处理NAT的业务板。
(独立运行模式)
nat service slot slot-number
(IRF模式)
nat service chassis chassis-number slot slot-number
缺省情况下,未指定处理NAT的业务板。
(4) 配置QoS策略
a. 创建QoS策略,定义匹配NAT业务流的类,以及重定向到处理NAT的业务板。
b. 将类和流行为绑定。
c. 在设备的入接口上应用QoS策略。
通过指定备份组,设备会将需要进行动态NAT(包括动态地址转换和NAT端口块动态映射)或NAT端口块静态映射的流量引到指定的备份组处理,提高了NAT业务处理的性能。关于备份组的详细介绍,请参见“可靠性配置指导”中的“备份组”。
使用CGN单板提供NAT功能的环境中,以下类型的地址转换需要配置本功能,否则可能会导致反向地址转换出错:
· 对于动态地址转换和NAT端口块动态映射,需要将NAT地址组与节点为CGN单板的备份组绑定。
· 对于NAT端口块静态映射,需要将NAT地址端口块组与节点为CGN单板的备份组绑定。
· 对于Easy IP方式的出方向动态地址转换,需要为其指定节点为CGN单板的备份组。
绑定的备份组可以不存在,但要使配置生效,必须通过failover group命令创建备份组。
· 配置BFD功能的接口请勿开启Easy IP功能,否则可能导致BFD功能不能正常使用。关于BFD的详细介绍请参见“可靠性配置指导”中的“BFD”。
· 配置路由协议的接口请勿开启Easy IP功能,否则可能导致路由协议不能正常使用。
· 配置Easy IP功能时,必须将提供NAT处理的业务板指定为流量出接口所在单板。
(1) 进入系统视图。
system-view
(2) 进入NAT地址组视图。
nat address-group group-id
(3) 配置NAT地址组与备份组绑定。
failover-group group-name
缺省情况下,NAT地址组未绑定任何备份组。
(1) 进入系统视图。
system-view
(2) 进入NAT端口块组视图。
nat port-block-group group-id
(3) 配置NAT端口块组与备份组绑定。
failover-group group-name
缺省情况下,NAT端口块组未绑定任何备份组。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 为Easy IP方式的动态地址转换指定备份组。
nat outbound easy-ip failover-group group-name
缺省情况下,没有为Easy IP方式的动态地址转换指定备份组。
集中式备份分布式CGN指的是在分布部署的CGN单板发生故障时,原来由分布式部署的CGN承载的流量由集中式部署的CGN负责进行地址转换,从而实现对分布式部署CGN的备份。
部署CGN的设备利用QoS策略或策略路由对流量的方向进行控制。关于QoS策略的详细介绍,请参见“ACL和QoS配置指导”中的“QoS”;关于策略路由的详细介绍,请参见“三次技术-IP路由配置指导”中的“策略路由”。
· 集中式部署CGN设备上配置的公网地址不能与分布式部署CGN设备上配置的公网地址重复,保证公网地址在互联网上的唯一性。
· 集中式部署不支持DS-Lite组网。
(1) 配置NAT。
具体配置分别参见“2.6 配置NAT端口块地址转换”。
(2) 创建备份组,并将CGN单板作为备份组的主节点。关于备份组的详细介绍,请参见“可靠性配置指导”中的“备份组”。
(3) 配置QoS策略(适用于路由方式实现流量切换)
a. 创建QoS策略,定义匹配NAT业务流的类,以及重定向到备份组的流行为。
b. 将类和流行为绑定。
c. 在设备的入接口上应用QoS策略。
(4) (可选)配置CGN板间热备。
a. 进入系统视图。
system-view
b. 开启会话业务热备份功能。
session synchronization enable
缺省情况下,仅备份端口块表项,不备份会话表项。关于本命令的详细介绍,请参见“安全配置指导”中的“会话管理”。
当备份组主、备节点均为CGN单板且需要进行CGN板间热备时,才需要开启本功能。
(5) 配置QoS策略(适用于通过GRE隧道方式实现流量切换)
a. 创建QoS策略,定义两个均可匹配NAT业务流的类(假设为类A和类B),以及两个不同的流行为,分别为重定向到备份组的流行为和重定向到下一跳的流行为,其中下一跳地址为CR设备上某接口(通常为CR设备上的Loopback接口)的IP地址,且需要满足路由可达和出接口为Tunnel接口两个条件。
请优先定义重定向到备份组的流行为,否则即便BRAS上的CGN单板正常,流量也会被重定向到CR设备。
b. 将类A与重定向到备份组的流行为绑定;将类B与重定向到下一跳的流行为绑定。
c. 在设备的入接口上应用QoS策略。
(6) 配置处理基于会话业务的备份组。关于会话的详细介绍,请参见“安全配置指导”中的“会话管理”。
(7) 开启集中式备份分布式CGN功能,保证BRAS设备的CGN单板故障时,已上线的用户不会下线。
nat centralized-backup enable
缺省情况下,集中备份分布CGN功能处于关闭状态。
(1) 在CR上配置策略路由,并设置报文转发的下一跳为旁挂设备的Loopback接口的IP地址。
(2) 配置NAT
具体配置分别参见“2.6 配置NAT端口块地址转换”。
(3) 创建备份组,并将CGN单板作为备份组的主节点。关于备份组的详细介绍,请参见“可靠性配置指导”中的“备份组”。
(4) (可选)配置CGN板间热备。
a. 进入系统视图。
system-view
b. 开启会话业务热备份功能。
session synchronization enable
缺省情况下,仅备份端口块表项,不备份会话表项。关于本命令的详细介绍,请参见“安全配置指导”中的“会话管理”。
当备份组主、备节点均为CGN单板且需要进行CGN板间热备时,才需要开启本功能。
(5) 配置QoS策略
a. 创建QoS策略,并在QoS策略中定义匹配NAT业务流的类,以及重定向到备份组的流行为。
b. 将类和流行为绑定。
c. 在设备的入接口上应用QoS策略。
(6) 配置处理基于会话业务的备份组。关于会话的详细介绍,请参见“安全配置指导”中的“会话管理”。
(7) 开启流量触发分配端口块功能。
nat port-block flow-trigger enable
缺省情况下,流量触发分配端口块功能处于关闭状态。
只有在CR设备上开启本功能,才能为切换到CR设备上需要进行地址转换的流量分配端口块。
(1) 配置NAT
具体配置分别参见“2.6 配置NAT端口块地址转换”。
(2) 创建备份组,并将CGN单板作为备份组的主节点。关于备份组的详细介绍,请参见“可靠性配置指导”中的“备份组”。
(3) 配置QoS策略
a. 创建QoS策略,并在QoS策略中定义匹配NAT业务流的类,以及重定向到备份组的流行为。
b. 将类和流行为绑定。
c. 在设备的入接口上应用QoS策略。
(4) 配置处理基于会话业务的备份组。关于会话的详细介绍,请参见“安全配置指导”中的“会话管理”。
(5) 开启流量触发分配端口块功能。
a. 进入系统视图。
system-view
b. 开启流量触发分配端口块功能。
nat port-block flow-trigger enable
缺省情况下,流量触发分配端口块功能处于关闭状态。
只有在CR设备上开启本功能,才能为切换到CR设备上需要进行地址转换的流量分配端口块。
NAT hairpin功能需要与内部服务器(nat server)、出方向动态地址转换(nat outbound)或出方向静态地址转换(nat static outbound)配合工作,且这些配置所在的接口必须在同一个接口板,否则NAT hairpin功能无法正常工作。
P2P方式下,外网侧的出方向地址转换必须配置为PAT转换方式,并开启EIM模式。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 开启NAT hairpin功能。
nat hairpin enable
缺省情况下,NAT hairpin功能处于关闭状态。
DNS mapping功能需要和内部服务器配合使用,由nat server配置定义内部服务器对外提供服务的外网IP地址和端口号,由DNS mapping建立“内部服务器域名<-->外网IP地址+外网端口号+协议类型”的映射关系。
(1) 进入系统视图。
system-view
(2) 配置一条域名到内部服务器的映射。
nat dns-map domain domain-name protocol pro-type { interface interface-type interface-number | ip global-ip } port global-port
可配置多条域名到内部服务器的映射。
在IRF组网环境中,物理接口上配置的NAT业务不支持ALG功能。
(1) 进入系统视图。
system-view
(2) 开启指定或所有协议类型的NAT ALG功能。
nat alg { all | dns | ftp | h323 | icmp-error | ils | mgcp | nbt | pptp | rsh | rtsp | sccp | sip | sqlnet | tftp | xdmcp }
缺省情况下,FTP协议、ICMP差错控制报文和RTSP协议的NAT ALG功能处于开启状态,其他协议类型的NAT ALG功能处于关闭状态。
NAT会话日志是为了满足网络管理员安全审计的需要,对NAT会话(报文经过设备时,源或目的信息被NAT进行过转换的连接)信息进行的记录,包括IP地址及端口的转换信息、用户的访问信息以及用户的网络流量信息。
有三种情况可以触发设备生成NAT会话日志:
· 新建NAT会话。
· 删除NAT会话。新增高优先级的配置、删除配置、报文匹配规则变更、NAT会话老化以及执行删除NAT会话的命令时,都可能导致NAT会话被删除。
· 存在NAT活跃流。NAT活跃流是指在一定时间内存在的NAT会话。当设置的生成活跃流日志的时间间隔到达时,当前存在的NAT会话信息就被记录并生成日志。
(1) 进入系统视图。
system-view
(2) 开启NAT日志功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情况下,NAT日志功能处于关闭状态。
(3) 开启NAT相关日志功能。请至少选择其中一项进行配置。
¡ 开启NAT新建会话的日志功能。
nat log flow-begin
¡ 开启NAT删除会话的日志功能。
nat log flow-end
¡ 开启NAT活跃流的日志功能,并设置生成活跃流日志的时间间隔。
nat log flow-active time-value
缺省情况下,创建、删除NAT会话或存在NAT活跃流时,均不生成NAT日志。
在NAT444场景中,为了满足运营商对互联网用户的溯源需要,对每个用户的私网IP地址进行端口块分配或回收时,都会输出一条基于用户的日志,记录私网IP地址和端口块的映射关系。在进行用户溯源时,只需根据报文的公网IP地址和端口找到对应的端口块分配日志信息,即可确定私网IP地址。
有两种情况可以触发设备输出NAT444用户日志:
· 端口块分配:端口块静态映射方式下,在某私网IP地址的第一个新建连接通过端口块进行地址转换时输出日志;端口块动态映射方式下,在为某私网IP地址分配端口块或增量端口块时输出日志。
· 端口块回收:端口块静态映射方式下,在某私网IP地址的最后一个连接拆除时输出日志;端口块动态映射方式下,在释放端口块资源(并删除端口块表项)时输出日志。
在配置NAT444用户日志功能前,必须先配置将用户定制日志发送到日志主机的功能,否则无法产生NAT444用户日志。详细配置请参见“网络管理和监控配置指导”中的“快速日志输出”。
(1) 进入系统视图。
system-view
(2) 开启NAT日志功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情况下,NAT日志功能处于关闭状态。
ACL参数对NAT444用户日志功能无效。
(3) 开启端口块用户日志功能。请至少选择其中一项进行配置。
¡ 开启端口块分配的NAT444用户日志功能。
nat log port-block-assign
¡ 开启端口块回收的NAT444用户日志功能。
nat log port-block-withdraw
缺省情况下,分配和回收端口块时,均不输出NAT444用户日志。
当NAT端口块地址转换发生端口块分配失败的情况时,通过开启本功能,系统会输出端口块分配失败的日志。
(1) 进入系统视图。
system-view
(2) 开启NAT日志功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情况下,NAT日志功能处于关闭状态。
(3) 开启NAT端口块分配失败的日志功能。
nat log port-block-alloc-fail
缺省情况下,NAT端口块分配失败的日志功能处于关闭状态。
当动态方式的NAT地址转换发生端口分配失败的情况时,通过开启本功能,系统会输出端口分配失败的日志。通常,端口块中所有的端口资源都被占用时会导致端口分配失败。
在开启本功能前,必须先配置将用户定制日志发送到日志主机的功能,否则无法产生NAT端口分配失败的日志。详细配置请参见“网络管理和监控配置指导”中的“快速日志输出”。
(1) 进入系统视图。
system-view
(2) 开启NAT日志功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情况下,NAT日志功能处于关闭状态。
(3) 开启NAT端口块分配失败的日志功能。
nat log port-alloc-fail
缺省情况下,NAT端口分配失败的日志功能处于关闭状态。
在NAT端口块地址转换中,当端口块或端口的使用率超过阈值时,通过开启本功能,输出日志信息。
(1) 进入系统视图。
system-view
(2) 开启NAT日志功能。
nat log enable [ acl { ipv4-acl-number | name ipv4-acl-name } ]
缺省情况下,NAT日志功能处于关闭状态。
(3) 配置NAT阈值信息日志功能。请至少选择其中一项进行配置。
¡ 开启NAT端口块中端口使用率的阈值信息日志功能,并设置NAT端口使用率的阈值。
nat log port-block port-usage threshold value
缺省情况下,NAT端口块中端口使用率的阈值信息日志功能处于关闭状态。
¡ 配置NAT端口块使用率的阈值。
nat log port-block usage threshold value
缺省情况下,NAT端口块使用率的阈值为90%。
在完成上述配置后,在任意视图下执行display命令可以显示NAT配置后的运行情况,通过查看显示信息验证配置的效果。
在用户视图下,执行reset命令可以清除NAT表项。
表2-2 NAT显示和维护
操作 |
命令 |
显示所有的NAT配置信息 |
display nat all |
显示NAT地址组的配置信息 |
display nat address-group [ group-id ] |
显示NAT DNS mapping的配置信息 |
display nat dns-map |
显示NAT EIM表项信息 |
(独立运行模式) display nat eim [ slot slot-number ] [ protocol { tcp | udp } ] (IRF模式) display nat eim [ chassis chassis-number slot slot-number ] [ protocol { tcp | udp } ] |
显示NAT EIM表项的统计信息 |
(独立运行模式) display nat eim statistics [ slot slot-number ] (IRF模式) display nat eim statistics [ chassis chassis-number slot slot-number ] |
显示NAT日志功能的配置信息 |
display nat log |
显示NAT NO-PAT表项信息 |
(独立运行模式) display nat no-pat [ slot slot-number ] (IRF模式) display nat no-pat [ chassis chassis-number slot slot-number ] |
显示NAT出接口动态地址转换关系的配置信息 |
display nat outbound |
显示NAT内部服务器的配置信息 |
display nat server |
显示NAT内部服务器组的配置信息 |
display nat server-group [ group-id ] |
显示NAT会话 |
(独立运行模式) display nat session [ { source-ip source-ip | destination-ip destination-ip } * [ vpn-instance vpn -instance-name ] ] [ slot slot-number ] [ verbose ] (IRF模式) display nat session [ { source-ip source-ip | destination-ip destination-ip } * [ vpn-instance vpn -instance-name ] ] [ chassis chassis-number slot slot-number ] [ verbose ] |
显示NAT静态地址转换的配置信息 |
display nat static |
显示NAT统计信息 |
(独立运行模式) display nat statistics [ summary ] [ slot slot-number ] (IRF模式) display nat statistics [ summary ] [ chassis chassis-number slot slot-number ] |
显示NAT端口块静态映射的配置信息 |
display nat outbound port-block-group |
显示NAT端口块组配置信息 |
display nat port-block-group [ group-id ] |
显示端口块表项 |
(独立运行模式) display nat port-block { dynamic [ ds-lite-b4 ] | static } [ slot slot-number ] (IRF模式) display nat port-block { dynamic [ ds-lite-b4 ] | static } [ chassis chassis-number slot slot-number ] |
删除NAT EIM表项信息 |
(独立运行模式) reset nat eim [ protocol { tcp | udp } ] [ slot slot-number ] (IRF模式) reset nat eim [ protocol { tcp | udp } ] [ chassis chassis-number slot slot-number ] |
删除NAT会话 |
(独立运行模式) reset nat session [ protocol { tcp | udp } ] [ slot slot-number ] (IRF模式) reset nat session [ protocol { tcp | udp } ] [ chassis chassis-number slot slot-number ] |
内部网络用户10.110.10.8/24使用外网地址202.38.1.100访问Internet。
图2-1 内网用户通过NAT地址访问外网(静态地址转换)配置组网图
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 配置内网IP地址10.110.10.8到外网地址202.38.1.100之间的一对一静态地址转换映射。
<Router> system-view
[Router] nat static outbound 10.110.10.8 202.38.1.100
# 使配置的静态地址转换在接口GigabitEthernet1/0/2上生效。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] nat static enable
# 指定2号单板为提供NAT服务的业务板。
[Router-GigabitEthernet1/0/2] nat service slot 2
[Router-GigabitEthernet1/0/2] quit
# 配置重定向报文的访问控制列表2001。
[Router] acl basic 2001
[Router-acl-ipv4-basic-2001] rule permit source 10.110.10.0 0.0.0.255
[Router-acl-ipv4-basic-2001] quit
# 配置QoS策略将报文重定向到2号槽位的单板。
[Router] traffic classifier 1
[Router-classifier-1] if-match acl 2001
[Router-classifier-1] quit
[Router] traffic behavior 1
[Router-behavior-1] redirect slot 2
[Router-behavior-1] quit
[Router] qos policy 1
[Router-qospolicy-1] classifier 1 behavior 1
[Router-qospolicy-1] quit
[Router] interface Gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy 1 inbound
[Router-GigabitEthernet1/0/1] quit
# 以上配置完成后,内网主机可以访问外网服务器。通过查看如下显示信息,可以验证以上配置成功。
[Router] display nat static
Static NAT mappings:
Totally 1 outbound static NAT mappings.
IP-to-IP:
Local IP : 10.110.10.8
Global IP : 202.38.1.100
Config status: Active
Interfaces enabled with static NAT:
Totally 1 interfaces enabled with static NAT.
Interface: GigabitEthernet1/0/2
Service card : Slot 2
Config status: Active
# 通过以下显示命令,可以看到Host访问某外网服务器时生成NAT会话信息。
[Router] display nat session verbose
Initiator:
Source IP/port: 10.110.10.8/42496
Destination IP/port: 202.38.1.111/2048
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: ICMP(1)
Inbound interface: GigabitEthernet1/0/1
Responder:
Source IP/port: 202.38.1.111/42496
Destination IP/port: 202.38.1.100/0
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: ICMP(1)
Inbound interface: GigabitEthernet1/0/2
State: ICMP_REPLY
Application: INVALID
Role: -
Failover group ID: -
Start time: 2012-08-16 09:30:49 TTL: 27s
Initiator->Responder: 5 packets 420 bytes
Responder->Initiator: 5 packets 420 bytes
Total sessions found: 1
· 某公司内网使用的IP地址为192.168.0.0/16。
· 该公司拥有202.38.1.2和202.38.1.3两个外网IP地址。
· 需要实现,内部网络中192.168.1.0/24网段的用户可以访问Internet,其它网段的用户不能访问Internet。使用的外网地址为202.38.1.2和202.38.1.3。
图2-2 内网用户通过NAT访问外网(地址不重叠)配置组网图
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 配置地址组0,包含两个外网地址202.38.1.2和202.38.1.3。
<Router> system-view
[Router] nat address-group 0
[Router-address-group-0] address 202.38.1.2 202.38.1.3
[Router-address-group-0] quit
# 配置ACL 2000,仅允许对内部网络中192.168.1.0/24网段的用户报文进行地址转换。
[Router] acl basic 2000
[Router-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Router-acl-ipv4-basic-2000] quit
# 在接口GigabitEthernet1/0/2上配置出方向动态地址转换,允许使用地址组0中的地址对匹配ACL 2000的报文进行源地址转换,并在转换过程中使用端口信息。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] nat outbound 2000 address-group 0
# 指定2号单板为提供NAT服务的业务板。
[Router-GigabitEthernet1/0/2] nat service slot 2
[Router-GigabitEthernet1/0/2] quit
# 配置重定向报文的访问控制列表2001。由于本例中重定向到提供NAT服务的业务板的报文为需要地址转换的报文,因此ACL 2001中定义的ACL规则与ACL 2000相同,但也可以根据实际组网需求定义不同的规则。
[Router] acl basic 2001
[Router-acl-ipv4-basic-2001] rule permit source 192.168.1.0 0.0.0.255
[Router-acl-ipv4-basic-2001] quit
# 配置QoS策略将报文重定向到2号槽位的单板。
[Router] traffic classifier 1
[Router-classifier-1] if-match acl 2001
[Router-classifier-1] quit
[Router] traffic behavior 1
[Router-behavior-1] redirect slot 2
[Router-behavior-1] quit
[Router] qos policy 1
[Router-qospolicy-1] classifier 1 behavior 1
[Router-qospolicy-1] quit
[Router] interface Gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy 1 inbound
[Router-GigabitEthernet1/0/1] quit
# 以上配置完成后,Host A能够访问WWW server,Host B和Host C无法访问WWW server。通过查看如下显示信息,可以验证以上配置成功。
[Router] display nat all
NAT address group information:
Totally 1 NAT address groups.
Address group 0:
Port range: 1-65535
Address information:
Start address End address
202.38.1.2 202.38.1.3
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000 Address group: 0 Port-preserved: N
NO-PAT: N Reversible: N
Service card: Slot 2
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Port-alloc-fail : Enabled
Port-block-alloc-fail : Disabled
Port-usage : Disabled
Port-block-usage : Enabled(40%)
NAT mapping behavior:
Mapping mode : Connection-dependent
NAT ALG:
DNS : Disabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Disabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
# 通过以下显示命令,可以看到Host A访问WWW server时生成NAT会话信息。
[Router] display nat session verbose
Initiator:
Source IP/port: 192.168.1.10/52992
Destination IP/port: 200.1.1.10/2048
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: ICMP(1)
Inbound interface: GigabitEthernet1/0/1
Responder:
Source IP/port: 200.1.1.10/4
Destination IP/port: 202.38.1.3/0
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: ICMP(1)
Inbound interface: GigabitEthernet1/0/2
State: ICMP_REPLY
Application: INVALID
Role: -
Failover group ID: -
Start time: 2012-08-15 14:53:29 TTL: 12s
Initiator->Responder: 1 packets 84 bytes
Responder->Initiator: 1 packets 84 bytes
Total sessions found: 1
内网用户Host A和Host B属于相同VPN实例,现在要求这两个主机Host A和Host B之间能够通过NAT地址互相访问。
图2-3 相同VPN实例内用户通过NAT地址互访配置组网图
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 配置VPN1内Host A的IP地址192.168.1.2到VPN1内IP地址10.1.1.100之间的一对一静态地址转换映射。
<Router> system-view
[Router] nat static outbound 192.168.1.2 vpn-instance vpn1 10.1.1.100 vpn-instance vpn1
# 使配置的静态地址转换在接口GigabitEthernet1/0/2上生效。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] nat static enable
# 指定2号单板为提供NAT服务的业务板。
[Router-GigabitEthernet1/0/2] nat service slot 2
[Router-GigabitEthernet1/0/2] quit
# 配置重定向报文的访问控制列表2001。
[Router] acl basic 2001
[Router-acl-ipv4-basic-2001] rule permit source 192.168.1.0 0.0.0.255
[Router-acl-ipv4-basic-2001] quit
# 配置QoS策略将报文重定向到2号槽位的单板。
[Router] traffic classifier 1
[Router-classifier-1] if-match acl 2001
[Router-classifier-1] quit
[Router] traffic behavior 1
[Router-behavior-1] redirect slot 2
[Router-behavior-1] quit
[Router] qos policy 1
[Router-qospolicy-1] classifier 1 behavior 1
[Router-qospolicy-1] quit
[Router] interface Gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy 1 inbound
[Router-GigabitEthernet1/0/1] quit
# 以上配置完成后,Host A访问Host B。通过查看如下显示信息,可以验证以上配置成功。
[Router] display nat static
Static NAT mappings:
Totally 1 outbound static NAT mappings.
IP-to-IP:
Local IP : 192.168.1.2
Global IP : 10.1.1.100
Local VPN : vpn1
Global VPN : vpn1
Config status: Active
Interfaces enabled with static NAT:
Totally 1 interfaces enabled with static NAT.
Interface: GigabitEthernet1/0/2
Service card : Slot 2
Config status: Active
# 通过以下显示命令,可以看到Host A访问Host B时生成NAT会话信息。
[Router] display nat session verbose
Initiator:
Source IP/port: 192.168.1.2/42496
Destination IP/port: 10.1.1.2/2048
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: vpn1/-/-
Protocol: ICMP(1)
Inbound interface: GigabitEthernet1/0/1
Responder:
Source IP/port: 10.1.1.2/42496
Destination IP/port: 10.1.1.100/0
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: vpn1/-/-
Protocol: ICMP(1)
Inbound interface: GigabitEthernet1/0/2
State: ICMP_REPLY
Application: INVALID
Role: -
Failover group ID: -
Start time: 2012-08-16 09:30:49 TTL: 27s
Initiator->Responder: 5 packets 420 bytes
Responder->Initiator: 5 packets 420 bytes
Total sessions found: 1
某公司内部对外提供Web、FTP和SMTP服务,而且提供两台Web服务器。公司内部网址为10.110.0.0/16。其中,内部FTP服务器地址为10.110.10.3/16,内部Web服务器1的IP地址为10.110.10.1/16,内部Web服务器2的IP地址为10.110.10.2/16,内部SMTP服务器IP地址为10.110.10.4/16。公司拥有202.38.1.1至202.38.1.3三个公网IP地址。需要实现如下功能:
· 外部的主机可以访问内部的服务器。
· 选用202.38.1.1作为公司对外提供服务的IP地址,Web服务器2对外采用8080端口。
图2-4 外网用户通过外网地址访问内网服务器配置组网图
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 进入接口GigabitEthernet1/0/2。
<Router> system-view
[Router] interface gigabitethernet 1/0/2
# 配置内部FTP服务器,允许外网主机使用地址202.38.1.1、端口号21访问内网FTP服务器。
[Router-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.1 21 inside 10.110.10.3 ftp
# 配置内部Web服务器1,允许外网主机使用地址202.38.1.1、端口号80访问内网Web服务器1。
[Router-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.1 80 inside 10.110.10.1 http
# 配置内部Web服务器2,允许外网主机使用地址202.38.1.1、端口号8080访问内网Web服务器2。
[Router-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.1 8080 inside 10.110.10.2 http
# 配置内部SMTP服务器,允许外网主机使用地址202.38.1.1以及SMTP协议定义的端口访问内网SMTP服务器。
[Router-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.1 smtp inside 10.110.10.4 smtp
# 指定2号单板为提供NAT服务的业务板。
[Router-GigabitEthernet1/0/2] nat service slot 2
[Router-GigabitEthernet1/0/2] quit
# 配置重定向报文的访问控制列表2001。
[Router] acl basic 2001
[Router-acl-ipv4-basic-2001] rule permit source 10.110.10.0 0.0.0.255
[Router-acl-ipv4-basic-2001] quit
# 配置QoS策略将报文重定向到2号槽位的单板。
[Router] traffic classifier 1
[Router-classifier-1] if-match acl 2001
[Router-classifier-1] quit
[Router] traffic behavior 1
[Router-behavior-1] redirect slot 2
[Router-behavior-1] quit
[Router] qos policy 1
[Router-qospolicy-1] classifier 1 behavior 1
[Router-qospolicy-1] quit
[Router] interface Gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy 1 inbound
# 以上配置完成后,外网Host能够通过NAT地址访问各内网服务器。通过查看如下显示信息,可以验证以上配置成功。
[Router] display nat all
NAT internal server information:
Totally 4 internal servers.
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.1/21
Local IP/port : 10.110.10.3/21
Service card : Slot 2
Config status : Active
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.1/25
Local IP/port : 10.110.10.4/25
Service card : Slot 2
Config status : Active
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.1/80
Local IP/port : 10.110.10.1/80
Service card : Slot 2
Config status : Active
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.1/8080
Local IP/port : 10.110.10.2/80
Service card : Slot 2
Config status : Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Port-alloc-fail : Enabled
Port-block-alloc-fail : Disabled
Port-usage : Disabled
Port-block-usage : Enabled(40%)
NAT mapping behavior:
Mapping mode : Connection-dependent
NAT ALG:
DNS : Disabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Disabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
# 通过以下显示命令,可以看到Host访问FTP server时生成NAT会话信息。
[Router] display nat session verbose
Initiator:
Source IP/port: 202.38.1.10/1694
Destination IP/port: 202.38.1.1/21
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Responder:
Source IP/port: 10.110.10.3/21
Destination IP/port: 202.38.1.10/1694
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
State: TCP_ESTABLISHED
Application: FTP
Role: -
Failover group ID: -
Start time: 2012-08-15 14:53:29 TTL: 3597s
Initiator->Responder: 7 packets 308 bytes
Responder->Initiator: 5 packets 312 bytes
Total sessions found: 1
· 某公司内部对外提供Web服务,Web服务器地址为10.110.10.2/24。
· 该公司在内网有一台DNS服务器,IP地址为10.110.10.3/24,用于解析Web服务器的域名。
· 该公司拥有两个外网IP地址:202.38.1.2和202.38.1.3。
需要实现,外网主机可以通过域名访问内网的Web服务器。
图2-5 外网用户通过域名访问内网服务器(地址不重叠)配置组网图
· 外网主机通过域名访问Web服务器,首先需要通过访问内网DNS服务器获取Web服务器的IP地址,因此需要通过配置NAT内部服务器将DNS服务器的内网IP地址和DNS服务端口映射为一个外网地址和端口。
· DNS服务器回应给外网主机的DNS报文载荷中携带了Web服务器的内网IP地址,因此需要将DNS报文载荷中的内网IP地址转换为一个外网IP地址。外网地址分配可以通过出方向动态地址转换功能实现,转换载荷信息可以通过DNS ALG功能实现。
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 开启DNS协议的ALG功能。
<Router> system-view
[Router] nat alg dns
# 配置ACL 2000,允许对内部网络中10.110.10.2的报文进行地址转换。
[Router] acl basic 2000
[Router-acl-ipv4-basic-2000] rule permit source 10.110.10.2 0
[Router-acl-ipv4-basic-2000] quit
# 创建地址组1。
[Router] nat address-group 1
# 添加地址组成员202.38.1.3。
[Router-address-group-1] address 202.38.1.3 202.38.1.3
[Router-address-group-1] quit
# 在接口GigabitEthernet1/0/2上配置NAT内部服务器,允许外网主机使用地址202.38.1.2访问内网DNS服务器。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] nat server protocol udp global 202.38.1.2 inside 10.110.10.3 dns
# 在接口GigabitEthernet1/0/2上配置出方向动态地址转换,允许使用地址组1中的地址对DNS应答报文载荷中的内网地址进行转换,并在转换过程中不使用端口信息,以及允许反向地址转换。
[Router-GigabitEthernet1/0/2] nat outbound 2000 address-group 1 no-pat reversible
# 指定2号单板为提供NAT服务的业务板。
[Router-GigabitEthernet1/0/2] nat service slot 2
[Router-GigabitEthernet1/0/2] quit
# 配置重定向报文的访问控制列表2001。
[Router] acl basic 2001
[Router-acl-ipv4-basic-2001] rule permit source 10.110.10.0 0.0.0.255
[Router-acl-ipv4-basic-2001] quit
# 配置QoS策略将报文重定向到2号槽位的单板。
[Router] traffic classifier 1
[Router-classifier-1] if-match acl 2001
[Router-classifier-1] quit
[Router] traffic behavior 1
[Router-behavior-1] redirect slot 2
[Router-behavior-1] quit
[Router] qos policy 1
[Router-qospolicy-1] classifier 1 behavior 1
[Router-qospolicy-1] quit
[Router] interface Gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy 1 inbound
# 以上配置完成后,外网Host能够通过域名访问内网Web server。通过查看如下显示信息,可以验证以上配置成功。
[Router] display nat all
NAT address group information:
Totally 1 NAT address groups.
Address group 1:
Port range: 1-65535
Address information:
Start address End address
202.38.1.3 202.38.1.3
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000 Address group: 1 Port-preserved: N
NO-PAT: Y Reversible: Y
Service card: Slot 2
Config status: Active
NAT internal server information:
Totally 1 internal servers.
Interface: GigabitEthernet1/0/2
Protocol: 17(UDP)
Global IP/port: 202.38.1.2/53
Local IP/port : 10.110.10.3/53
Service card : Slot 2
Config status : Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Port-alloc-fail : Enabled
Port-block-alloc-fail : Disabled
Port-usage : Disabled
Port-block-usage : Enabled(40%)
NAT mapping behavior:
Mapping mode : Connection-dependent
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Disabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
# 通过以下显示命令,可以看到Host访问Web server时生成NAT会话信息。
[Router] display nat session verbose
Initiator:
Source IP/port: 200.1.1.2/1694
Destination IP/port: 202.38.1.3/8080
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Responder:
Source IP/port: 10.110.10.2/8080
Destination IP/port: 202.1.1.2/1694
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
State: TCP_ESTABLISHED
Application: HTTP
Role: -
Failover group ID: -
Start time: 2012-08-15 14:53:29 TTL: 3597s
Initiator->Responder: 7 packets 308 bytes
Responder->Initiator: 5 packets 312 bytes
Total sessions found: 1
· 某公司内部网络中有一台FTP服务器,地址为192.168.1.4/24。
· 该公司拥有两个外网IP地址:202.38.1.1和202.38.1.2。
需要实现如下功能:
· 外网主机可以通过202.38.1.2访问内网中的FTP服务器。
· 内网主机也可以通过202.38.1.2访问内网中的FTP服务器。
图2-6 内网用户通过NAT地址访问内网服务器配置组网图
该需求为典型的C-S模式的NAT hairpin应用,具体配置思路如下。
· 为使外网主机可以通过外网地址访问内网FTP服务器,需要在外网侧接口配置NAT内部服务器。
· 为使内网主机通过外网地址访问内网FTP服务器,需要在内网侧接口开启NAT hairpin功能。其中,目的IP地址转换通过匹配外网侧接口上的内部服务器配置来完成,源地址转换通过匹配内部服务器所在接口上的出方向动态地址转换或出方向静态地址转换来完成,本例中采用出方向动态地址转换配置。
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 配置ACL 2000,允许对内部网络中192.168.1.0/24网段的报文进行地址转换。
<Router> system-view
[Router] acl basic 2000
[Router-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Router-acl-ipv4-basic-2000] quit
# 在接口GigabitEthernet1/0/2上配置NAT内部服务器,允许外网主机使用地址202.38.1.2访问内网FTP服务器,同时使得内网主机访问内网FTP服务器的报文可以进行目的地址转换。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.2 inside 192.168.1.4 ftp
# 在接口GigabitEthernet1/0/2上配置Easy IP方式的出方向动态地址转换,使得内网主机访问内网FTP服务器的报文可以使用接口GigabitEthernet1/0/2的IP地址进行源地址转换。
[Router-GigabitEthernet1/0/2] nat outbound 2000
# 在接口GigabitEthernet1/0/2上指定2号单板为提供NAT服务的业务板。
[Router-GigabitEthernet1/0/2] nat service slot 2
[Router-GigabitEthernet1/0/2] quit
# 在接口GigabitEthernet1/0/1上开启NAT hairpin功能。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] nat hairpin enable
# 在接口GigabitEthernet1/0/1上指定2号单板为提供NAT服务的业务板。
[Router-GigabitEthernet1/0/1] nat service slot 2
[Router-GigabitEthernet1/0/1] quit
# 配置重定向报文的访问控制列表2001。由于本例中重定向到提供NAT服务的业务板的报文为需要地址转换的报文,因此ACL 2001中定义的ACL规则与ACL 2000相同,但也可以根据实际组网需求定义不同的规则。
[Router] acl basic 2001
[Router-acl-ipv4-basic-2001] rule permit source 192.168.1.0 0.0.0.255
[Router-acl-ipv4-basic-2001] quit
# 配置QoS策略将报文重定向到2号槽位的单板。
[Router] traffic classifier 1
[Router-classifier-1] if-match acl 2001
[Router-classifier-1] quit
[Router] traffic behavior 1
[Router-behavior-1] redirect slot 2
[Router-behavior-1] quit
[Router] qos policy 1
[Router-qospolicy-1] classifier 1 behavior 1
[Router-qospolicy-1] quit
[Router] interface Gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy 1 inbound
# 以上配置完成后,内网主机和外网主机均能够通过外网地址访问内网FTP Server。通过查看如下显示信息,可以验证以上配置成功。
[Router]display nat all
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000 Address group: --- Port-preserved: N
NO-PAT: N Reversible: N
Service card: Slot 2
Config status: Active
NAT internal server information:
Totally 1 internal servers.
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.2/21
Local IP/port : 192.168.1.4/21
Service card : Slot 2
Config status : Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Port-alloc-fail : Enabled
Port-block-alloc-fail : Disabled
Port-usage : Disabled
Port-block-usage : Enabled(40%)
NAT hairpinning:
Totally 1 interfaces enabled with NAT hairpinning.
Interface: GigabitEthernet1/0/1
Service card : Slot 2
Config status: Active
NAT mapping behavior:
Mapping mode : Connection-dependent
NAT ALG:
DNS : Disabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Disabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
# 通过以下显示命令,可以看到Host A访问FTP server时生成NAT会话信息。
[Router] display nat session verbose
Initiator:
Source IP/port: 192.168.1.2/1694
Destination IP/port: 202.38.1.2/21
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
Responder:
Source IP/port: 192.168.1.4/21
Destination IP/port: 202.38.1.1/1025
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
State: TCP_ESTABLISHED
Application: FTP
Role: -
Failover group ID: -
Start time: 2012-08-15 14:53:29 TTL: 3597s
Initiator->Responder: 7 packets 308 bytes
Responder->Initiator: 5 packets 312 bytes
Total sessions found: 1
某公司内部拥有3台FTP服务器对外提供FTP服务。
需要实现如下功能:
· 使用IP地址为202.38.1.1作为公司对外提供服务的IP地址。
· 3台FTP服务器可以同时对外提供服务,并进行负载分担。
图2-7 负载分担内部服务器配置组网图
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 配置内部服务器组0及其成员10.110.10.1、10.110.10.2和10.110.10.3。
<Router> system-view
[Router] nat server-group 0
[Router-nat-server-group-0] inside ip 10.110.10.1 port 21
[Router-nat-server-group-0] inside ip 10.110.10.2 port 21
[Router-nat-server-group-0] inside ip 10.110.10.3 port 21
[Router-nat-server-group-0] quit
# 在接口Gigabitethernet1/0/2上配置负载分担内部服务器,引用内部服务器组0,该组内的主机共同对外提供FTP服务。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.1 ftp inside server-group 0
# 指定2号单板为提供NAT服务的业务板。
[Router-GigabitEthernet1/0/2] nat service slot 2
[Router-GigabitEthernet1/0/2] quit
# 配置重定向报文的访问控制列表2001。
[Router] acl basic 2001
[Router-acl-ipv4-basic-2001] rule permit source 10.110.10.0 0.0.0.255
[Router-acl-ipv4-basic-2001] quit
# 配置QoS策略将报文重定向到2号槽位的单板。
[Router] traffic classifier 1
[Router-classifier-1] if-match acl 2001
[Router-classifier-1] quit
[Router] traffic behavior 1
[Router-behavior-1] redirect slot 2
[Router-behavior-1] quit
[Router] qos policy 1
[Router-qospolicy-1] classifier 1 behavior 1
[Router-qospolicy-1] quit
[Router] interface Gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy 1 inbound
[Router-GigabitEthernet1/0/1] quit
# 以上配置完成后,外网主机可以访问内网FTP服务器组。通过查看如下显示信息,可以验证以上配置成功。
[Router] display nat all
NAT server group information:
Totally 1 NAT server groups.
Group Number Inside IP Port Weight
0 10.110.10.1 21 100
10.110.10.2 21 100
10.110.10.3 21 100
NAT internal server information:
Totally 1 internal servers.
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.1/21
Local IP/port : server group 0
10.110.10.1/21 (Connections: 1)
10.110.10.2/21 (Connections: 2)
10.110.10.3/21 (Connections: 2)
Service card : Slot 2
Config status : Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Port-alloc-fail : Enabled
Port-block-alloc-fail : Disabled
Port-usage : Disabled
Port-block-usage : Enabled(40%)
NAT mapping behavior:
Mapping mode : Connection-dependent
NAT ALG:
DNS : Disabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Disabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
# 通过以下显示命令,可以看到外网主机访问内网某FTP server时生成NAT会话信息。
[Router] display nat session verbose
Initiator:
Source IP/port: 202.38.1.25/53957
Destination IP/port: 202.38.1.1/21
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/2
Responder:
Source IP/port: 10.110.10.3/21
Destination IP/port: 202.38.1.25/53957
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: TCP(6)
Inbound interface: GigabitEthernet1/0/1
State: TCP_ESTABLISHED
Application: FTP
Role: -
Failover group ID: -
Start time: 2012-08-16 11:06:07 TTL: 26s
Initiator->Responder: 1 packets 60 bytes
Responder->Initiator: 2 packets 120 bytes
Total sessions found: 1
某公司内部对外提供Web和FTP服务。公司内部网址为10.110.0.0/16。其中,Web服务器地址为10.110.10.1/16,FTP服务器地址为10.110.10.2/16。公司具有202.38.1.1至202.38.1.3三个公网IP地址。另外公司在外网有一台DNS服务器,IP地址为202.38.1.4。
需要实现如下功能:
· 选用202.38.1.2作为公司对外提供服务的IP地址。
· 外网用户可以通过域名或IP地址访问内部服务器。
· 内网用户可以通过域名访问内部服务器。
图2-8 NAT DNS mapping配置组网图
· 内网服务器对外提供服务,需要配置NAT内部服务器将各服务器的内网IP地址和端口映射为一个外网地址和端口。
· 内网主机通过域名访问内网服务器时,首先需要通过出接口地址转换分配的外网地址访问外网的DNS服务器,并获取内网服务器的内网IP地址。由于DNS服务器向内网主机发送的响应报文中包含的是内网服务器的外网地址,因此NAT设备需要将DNS报文载荷内的外网地址转换为内网地址,这可以通过查找DNS mapping映射表配合DNS ALG功能实现。DNS mapping映射表用于实现根据“域名+外网IP地址+外网端口号+协议类型”查找到对应的“内网IP+内网端口号”。
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 开启DNS的NAT ALG功能。
<Router> system-view
[Router] nat alg dns
# 进入接口GigabitEthernet1/0/2。
[Router] interface gigabitethernet 1/0/2
# 配置NAT内部Web服务器,允许外网主机使用地址202.38.1.2访问内网Web服务器。
[Router-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.2 inside 10.110.10.1 http
# 配置NAT内部FTP服务器,允许外网主机使用地址202.38.1.2访问内网FTP服务器。
[Router-GigabitEthernet1/0/2] nat server protocol tcp global 202.38.1.2 inside 10.110.10.2 ftp
# 在接口GigabitEthernet1/0/2上配置Easy IP方式的出方向动态地址转换。
[Router-GigabitEthernet1/0/2] nat outbound
# 指定2号单板为提供NAT服务的业务板。
[Router-GigabitEthernet1/0/2] nat service slot 2
[Router-GigabitEthernet1/0/2] quit
# 配置两条DNS mapping表项:Web服务器的域名www.server.com对应IP地址202.38.1.2;FTP服务器的域名ftp.server.com对应IP地址202.38.1.2。
[Router] nat dns-map domain www.server.com protocol tcp ip 202.38.1.2 port http
[Router] nat dns-map domain ftp.server.com protocol tcp ip 202.38.1.2 port ftp
[Router] quit
# 配置重定向报文的访问控制列表2001。
[Router] acl basic 2001
[Router-acl-ipv4-basic-2001] rule permit source 10.110.10.0 0.0.0.255
[Router-acl-ipv4-basic-2001] quit
# 配置QoS策略将报文重定向到2号槽位的单板。
[Router] traffic classifier 1
[Router-classifier-1] if-match acl 2001
[Router-classifier-1] quit
[Router] traffic behavior 1
[Router-behavior-1] redirect slot 2
[Router-behavior-1] quit
[Router] qos policy 1
[Router-qospolicy-1] classifier 1 behavior 1
[Router-qospolicy-1] quit
[Router] interface Gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy 1 inbound
[Router-GigabitEthernet1/0/1] quit
# 以上配置完成后,内网主机和外网主机均可以通过域名访问内网服务器。通过查看如下显示信息,可以验证以上配置成功。
[Router] display nat all
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: --- Address group: --- Port-preserved: N
NO-PAT: N Reversible: N
Service card: Slot 2
Config status: Active
NAT internal server information:
Totally 2 internal servers.
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.2/21
Local IP/port : 10.110.10.2/21
Service card : Slot 2
Config status : Active
Interface: GigabitEthernet1/0/2
Protocol: 6(TCP)
Global IP/port: 202.38.1.2/80
Local IP/port : 10.110.10.1/80
Service card : Slot 2
Config status : Active
NAT DNS mapping information:
Totally 2 NAT DNS mappings.
Domain name: ftp.server.com
Global IP : 202.38.1.2
Global port: 21
Protocol : TCP(6)
Config status: Active
Domain name: www.server.com
Global IP : 202.38.1.2
Global port: 80
Protocol : TCP(6)
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Port-alloc-fail : Enabled
Port-block-alloc-fail : Disabled
Port-usage : Disabled
Port-block-usage : Enabled(40%)
NAT mapping behavior:
Mapping mode : Connection-dependent
NAT ALG:
DNS : Enabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Disabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
· 私网上的Host通过Device访问公网。
· Device开启NAT转换功能,对私网用户和公网设备之间往来的报文做NAT转换,开启NAT日志功能,并配置NAT日志输出至信息中心。
· 通过查看信息中心的记录,实现对私网用户的监控。
图2-9 NAT日志输出至信息中心配置组网图
按组网图所示配置各接口的IP地址,并确保Host与Device之间路由可达。
# 配置Flow日志输出到信息中心。
<Device> system-view
[Device] userlog flow syslog
# 开启NAT日志功能。
[Device] nat log enable
# 开启NAT新建会话的日志功能。
[Device] nat log flow-begin
# 开启NAT删除会话的日志功能。
[Device] nat log flow-end
# 开启NAT活跃流的日志功能,并设置生成活跃流日志的时间间隔为10分钟。
[Device] nat log flow-active 10
[Device] quit
# 通过查看日志缓冲区监视私网用户的访问记录。
<Device> dir
Directory of cf:/
38 -rw- 141 Aug 07 2015 17:54:43 ifindex.dat
39 drw- - Aug 18 2014 17:51:38 license
40 drw- - May 20 2015 14:36:20 logfile
249852 KB total (232072 KB free)
File system type of cf: FAT32
<Device> cd logfile
<Device> dir
<Device> more logfile.log
……略……
%Aug 10 20:06:30:182 2015 Device NAT/6/NAT_FLOW: Protocol(1001)=ICMP;SrcIPAd
dr(1003)=10.110.10.8;SrcPort(1004)=259;NatSrcIPAddr(1005)=202.38.1.100;NatSrcPor
t(1006)=0;DstIPAddr(1007)=202.38.1.2;DstPort(1008)=2048;NatDstIPAddr(1009)=202.3
8.1.2;NatDstPort(1010)=259;InitPktCount(1044)=0;InitByteCount(1046)=0;RplyPktCou
nt(1045)=0;RplyByteCount(1047)=0;RcvVPNInstance(1042)=;SndVPNInstance(1043)=;Rcv
DSLiteTunnelPeer(1040)=;SndDSLiteTunnelPeer(1041)=;BeginTime_e(1013)=08102015200
630; EndTime_e(1014)=08102015200700;Event(1048)=(8)Session created;
……略……
该举例里的NAT日志信息表示的具体含义如表2-3所示。
表2-3 NAT日志显示信息描述表
字段 |
描述 |
Protocol(1001)=ICMP |
IP承载的协议为ICMP协议 |
SrcIPAddr(1003)=10.110.10.8 |
NAT转换前报文的源地址 |
SrcPort(1004)=259 |
NAT转换前报文的TCP/UDP源端口号 |
NatSrcIPAddr(1005)=202.38.1.100 |
NAT转换后报文的源地址 |
NatSrcPort(1006)=0 |
NAT转换后报文的TCP/UDP源端口号 |
DstIPAddr(1007)=202.38.1.2 |
NAT转换前报文的目的地址 |
DstPort(1008)=2048 |
NAT转换前报文的TCP/UDP目的端口号 |
NatDstIPAddr(1009)=202.38.1.2 |
NAT转换后报文的目的地址 |
NatDstPort(1010)=259 |
NAT转换后的TCP/UDP目的端口号 |
BeginTime_e(1013)=08102015200630 |
流起始时间,格式为MMDDYYYYhhmmss |
EndTime_e(1014)=08102015200700 |
流结束时间,格式为MMDDYYYYhhmmss |
通过在设备Device上配置NAT日志输出至日志服务器功能,实现对用户上网行为的监控。
图2-10 NAT日志输出至日志服务器配置组网图
按组网图所示配置各接口的IP地址,并确保Device与User、Log Server之间路由可达。
# 开启NAT日志功能。
<Device> system-view
[Device] nat log enable
# 开启NAT新建、删除会话和活跃流的日志功能。
[Device] nat log flow-begin
[Device] nat log flow-end
[Device] nat log flow-active 10
# 配置Flow日志报文版本号为3.0。
[Device] userlog flow export version 3
# 配置Flow日志信息发送给Flow日志主机,日志主机的IP地址为1.2.3.6,端口号为2000。
[Device] userlog flow export host 1.2.3.6 port 2000
# 配置发送Flow日志的源IP地址为2.2.2.2。
[Device] userlog flow export source-ip 2.2.2.2
[Device] quit
# 查看Flow日志的配置和统计信息。
<Device> display userlog export
Flow:
Export flow log as UDP Packet.
Version: 3.0
Source ipv4 address: 2.2.2.2
Source ipv6 address:
Log load balance function: Disabled
Local time stamp: Disabled
Number of log hosts: 1
Log host 1:
Host/Port: 1.2.3.6/2000
Total logs/UDP packets exported: 112/87
以下配置举例中,通过bind命令加入备份组的节点均为CGN单板。所有示例中slot所在的槽位号仅为示例,请以CGN单板所在的实际槽位号为准。
内部网络用户10.110.10.8/24使用外网地址202.38.1.100访问Internet。
图2-11 内网用户通过NAT地址访问外网(静态地址转换)配置组网图
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 将指定slot配置为备份组cgn的主节点。
<Router> system-view
[Router] failover group cgn id 1
[Router-failover-group-cgn] bind slot 4 primary
[Router-failover-group-cgn] quit
# 配置内网IP地址10.110.10.8到外网地址202.38.1.100之间的一对一静态地址转换映射。
[Router] nat static outbound 10.110.10.8 202.38.1.100 failover-group cgn
# 配置ACL规则,ACL 2000,仅允许对内部网络中10.110.10.0/24网段的用户报文进行地址转换。
[Router] acl basic 2000
[Router-acl-ipv4-basic-2000] rule permit source 10.110.10.0 0.0.0.255
[Router-acl-ipv4-basic-2000] quit
# 配置流分类cgn,配置流行为cgn,将匹配ACL 2000的流量引入备份组cgn。
[Router] traffic classifier cgn
[Router-classifier-cgn] if-match acl 2000
[Router-classifier-cgn] quit
[Router] traffic behavior cgn
[Router-behavior-cgn] redirect failover-group cgn
[Router-behavior-cgn] quit
# 配置QoS策略,将流分类与流行为进行绑定。
[Router] qos policy cgn
[Router-qospolicy-cgn] classifier cgn behavior cgn
[Router-qospolicy-cgn] quit
# 在接口GigabitEthernet1/0/1上配置引流规则。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy cgn inbound
[Router-GigabitEthernet1/0/1] quit
# 使配置的静态地址转换在接口GigabitEthernet1/0/2上生效。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] nat static enable
[Router-GigabitEthernet1/0/2] quit
# 配置处理基于会话业务的备份组,即仅允许将匹配ACL 2000的报文引流到备份组cgn的主节点上进行业务处理。
[Router] session service-location acl 2000 failover-group cgn
# 以上配置完成后,内网主机可以访问外网服务器。通过查看如下显示信息,可以验证以上配置成功。
[Router] display nat static
Static NAT mappings:
Totally 1 outbound static NAT mappings.
IP-to-IP:
Local IP : 10.110.10.8
Global IP : 202.38.1.100
Failover group name: cgn
Config status: Active
Interfaces enabled with static NAT:
Totally 1 interfaces enabled with static NAT.
Interface: GigabitEthernet1/0/2
Service card : ---
Config status: Active
# 通过以下显示命令,可以看到Host访问某外网服务器时生成NAT会话信息。
[Router] display nat session verbose
Initiator:
Source IP/port: 10.110.10.8/1024
Destination IP/port: 202.38.1.111/1025
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: UDP(17)
Inbound interface: GigabitEthernet1/0/1
Responder:
Source IP/port: 202.38.1.111/1025
Destination IP/port: 202.38.1.100/1024
DS-Lite tunnel peer: -
VPN instance/VLAN ID/Inline ID: -/-/-
Protocol: UDP(17)
Inbound interface: GigabitEthernet1/0/2
State: UDP_READY
Application: OTHER
Role: Master
Failover group ID: 1
Start time: 2015-05-29 18:49:37
Initiator->Responder: 0 packets 0 bytes
Responder->Initiator: 0 packets 0 bytes
Total sessions found: 1
· 某公司内网使用的IP地址为192.168.0.0/16。
· 该公司拥有202.38.1.2和202.38.1.3两个外网IP地址。
· 需要实现,内部网络中192.168.1.0/24网段的用户可以访问Internet,其它网段的用户不能访问Internet。使用的外网地址为202.38.1.2和202.38.1.3。
图2-12 内网用户通过NAT访问外网(地址不重叠)配置组网图
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 将指定slot配置为备份组cgn的主节点。
<Router> system-view
[Router] failover group cgn id 1
[Router-failover-group-cgn] bind slot 4 primary
[Router-failover-group-cgn] quit
# 配置地址组0,包含两个外网地址202.38.1.2和202.38.1.3,并将地址组0与备份组cgn绑定。
[Router] nat address-group 0
[Router-address-group-0] address 202.38.1.2 202.38.1.3
[Router-address-group-0] failover-group cgn
[Router-address-group-0] quit
# 配置ACL 2000,仅允许对内部网络中192.168.1.0/24网段的用户报文进行地址转换。
[Router] acl basic 2000
[Router-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Router-acl-ipv4-basic-2000] quit
# 配置流分类cgn,配置流行为cgn,将匹配ACL 2000的流量引入备份组cgn。
[Router] traffic classifier cgn
[Router-classifier-cgn] if-match acl 2000
[Router-classifier-cgn] quit
[Router] traffic behavior cgn
[Router-behavior-cgn] redirect failover-group cgn
[Router-behavior-cgn] quit
# 配置QoS策略,将流分类与流行为进行绑定。
[Router] qos policy cgn
[Router-qospolicy-cgn] classifier cgn behavior cgn
[Router-qospolicy-cgn] quit
# 在接口GigabitEthernet1/0/1上配置引流规则。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy cgn inbound
[Router-GigabitEthernet1/0/1] quit
# 在接口GigabitEthernet1/0/2上配置出方向动态地址转换,允许使用地址组0中的地址对匹配ACL 2000的报文进行源地址转换,并在转换过程中使用端口信息。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] nat outbound 2000 address-group 0
[Router-GigabitEthernet1/0/2] quit
# 配置处理基于会话业务的备份组,即仅允许将匹配ACL 2000的报文引流到备份组cgn的主节点上进行业务处理。
[Router] session service-location acl 2000 failover-group cgn
# 以上配置完成后,Host A能够访问WWW server,Host B和Host C无法访问WWW server。通过查看如下显示信息,可以验证以上配置成功。
[Router] display nat all
NAT address group information:
Totally 1 NAT address groups.
Address group 0:
Port range: 1-65535
Failover group name: cgn
Address information:
Start address End address
202.38.1.2 202.38.1.3
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000 Address group: 0 Port-preserved: N
NO-PAT: N Reversible: N
Service card: ---
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Port-alloc-fail : Enabled
Port-block-alloc-fail : Disabled
Port-usage : Disabled
Port-block-usage : Enabled(40%)
NAT mapping behavior:
Mapping mode : Connection-dependent
NAT ALG:
DNS : Disabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Disabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
# 通过以下显示命令,可以看到Host A访问WWW server时生成NAT会话信息。
[Router] display nat session verbose
Initiator:
Source IP/port: 192.168.1.10/52992
Destination IP/port: 200.1.1.10/2048
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: ICMP(1)
Inbound interface: GigabitEthernet1/0/1
Responder:
Source IP/port: 200.1.1.10/4
Destination IP/port: 202.38.1.3/0
DS-Lite tunnel peer: -
VPN instance/VLAN ID/VLL ID: -/-/-
Protocol: ICMP(1)
Inbound interface: GigabitEthernet1/0/2
State: ICMP_REPLY
Application: INVALID
Role: Master
Failover group ID: 1
Start time: 2012-08-15 14:53:29
Initiator->Responder: 1 packets 84 bytes
Responder->Initiator: 1 packets 84 bytes
Total sessions found: 1
内部网络用户10.110.10.1~10.110.10.10使用外网地址202.38.1.100访问Internet。内网用户地址基于NAT端口块静态映射方式复用外网地址202.38.1.100,外网地址的端口范围为10001~15000,端口块大小为500。
图2-13 NAT端口块静态映射配置组网图
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 将指定slot配置为备份组cgn的主节点。
<Router> system-view
[Router] failover group cgn id 1
[Router-failover-group-cgn] bind slot 4 primary
[Router-failover-group-cgn] quit
# 创建NAT端口块组1。
[Router] nat port-block-group 1
# 绑定备份组cgn。
[Router-address-group-1] failover-group cgn
# 添加私网地址成员10.110.10.1~10.110.10.10。
[Router-port-block-group-1] local-ip-address 10.110.10.1 10.110.10.10
# 添加公网地址成员为202.38.1.100。
[Router-port-block-group-1] global-ip-pool 202.38.1.100 202.38.1.100
# 配置端口块大小为500,公网地址的端口范围为10001~15000。
[Router-port-block-group-1] block-size 500
[Router-port-block-group-1] port-range 10001 15000
[Router-port-block-group-1] quit
# 配置ACL 2000,仅允许对内部网络中10.110.10.0/24网段的用户报文进行地址转换。
[Router] acl basic 2000
[Router-acl-ipv4-basic-2000] rule permit source 10.110.10.0 0.0.0.255
[Router-acl-ipv4-basic-2000] quit
# 配置流分类cgn,配置流行为cgn,将匹配ACL 2000的流量引入备份组cgn。
[Router] traffic classifier cgn
[Router-classifier-cgn] if-match acl 2000
[Router-classifier-cgn] quit
[Router] traffic behavior cgn
[Router-behavior-cgn] redirect failover-group cgn
[Router-behavior-cgn] quit
# 配置QoS策略,将流分类与流行为进行绑定。
[Router] qos policy cgn
[Router-qospolicy-cgn] classifier cgn behavior cgn
[Router-qospolicy-cgn] quit
# 在接口GigabitEthernet1/0/1上配置引流规则。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy cgn inbound
[Router-GigabitEthernet1/0/1] quit
# 在接口GigabitEthernet1/0/2上配置NAT端口块静态映射,引用端口块组1。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] nat outbound port-block-group 1
[Router-GigabitEthernet1/0/2] quit
# 配置处理基于会话业务的备份组,即仅允许将匹配ACL 2000的报文引流到备份组cgn的主节点上进行业务处理。
[Router] session service-location acl 2000 failover-group cgn
# 开启流量触发分配端口块功能。
[Router] nat port-block flow-trigger enable
# 以上配置完成后,内网主机可以访问外网服务器。通过查看如下显示信息,可以验证以上配置成功。
[Router] display nat all
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Port-alloc-fail : Enabled
Port-block-alloc-fail : Disabled
Port-usage : Disabled
Port-block-usage : Enabled(40%)
NAT mapping behavior:
Mapping mode : Connection-dependent
NAT ALG:
DNS : Disabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Disabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
NAT port block group information:
Totally 1 NAT port block groups.
Port block group 1:
Port range: 10001-15000
Block size: 500
Failover group name: cgn
Local IP address information:
Start address End address VPN instance
10.110.10.1 10.110.10.10 ---
Global IP pool information:
Start address End address
202.38.1.100 202.38.1.100
NAT outbound port block group information:
Totally 1 outbound port block group items.
Interface: GigabitEthernet1/0/2
Port block group: 1
Service card : ---
Config status : Active
# 通过以下显示命令,可以看到系统生成的静态端口块表项信息。
[Router] display nat port-block static
Slot 4:
Local VPN Local IP Global IP Port block Connections Extend
--- 10.110.10.1 202.38.1.100 10001-10500 2 ---
--- 10.110.10.2 202.38.1.100 10501-11000 0 ---
--- 10.110.10.3 202.38.1.100 11001-11500 0 ---
--- 10.110.10.4 202.38.1.100 11501-12000 0 ---
--- 10.110.10.5 202.38.1.100 12001-12500 1 ---
--- 10.110.10.6 202.38.1.100 12501-13000 0 ---
--- 10.110.10.7 202.38.1.100 13001-13500 0 ---
--- 10.110.10.8 202.38.1.100 13501-14000 0 ---
--- 10.110.10.9 202.38.1.100 14001-14500 0 ---
--- 10.110.10.10 202.38.1.100 14501-15000 0 ---
Total mappings found: 10
· 某公司内网使用的IP地址为192.168.0.0/16。
· 该公司拥有202.38.1.2和202.38.1.3两个外网IP地址。
需要实现,内部网络中的192.168.1.0/24网段的用户可以访问Internet,其它网段的用户不能访问Internet。基于NAT端口块动态映射方式复用两个外网地址202.38.1.2和202.38.1.3,外网地址的端口范围为1024~65535,端口块大小为300。当为某用户分配的端口块资源耗尽时,再为其增量分配1个端口块。
图2-14 NAT端口块动态映射配置组网图
# 按照组网图配置各接口的IP地址,具体配置过程略。
# 将指定slot配置为备份组cgn的主节点。
<Router> system-view
[Router] failover group cgn id 1
[Router-failover-group-cgn] bind slot 4 primary
[Router-failover-group-cgn] quit
# 配置地址组0,包含两个外网地址202.38.1.2和202.38.1.3,外网地址的端口范围为1024~65535,端口块大小为300,增量端口块数为1。
[Router] nat address-group 0
[Router-address-group-0] failover-group cgn
[Router-address-group-0] address 202.38.1.2 202.38.1.3
[Router-address-group-0] port-range 1024 65535
[Router-address-group-0] port-block block-size 300 extended-block-number 1
[Router-address-group-0] quit
# 配置ACL 2000,仅允许对内部网络中192.168.1.0/24网段的用户报文进行地址转换。
[Router] acl basic 2000
[Router-acl-ipv4-basic-2000] rule permit source 192.168.1.0 0.0.0.255
[Router-acl-ipv4-basic-2000] quit
# 配置流分类cgn,配置流行为cgn,将匹配ACL 2000的流量引入备份组cgn。
[Router] traffic classifier cgn
[Router-classifier-cgn] if-match acl 2000
[Router-classifier-cgn] quit
[Router] traffic behavior cgn
[Router-behavior-cgn] redirect failover-group cgn
[Router-behavior-cgn] quit
# 配置QoS策略,将流分类与流行为进行绑定。
[Router] qos policy cgn
[Router-qospolicy-cgn] classifier cgn behavior cgn
[Router-qospolicy-cgn] quit
# 在接口GigabitEthernet1/0/1上配置引流规则。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy cgn inbound
[Router-GigabitEthernet1/0/1] quit
# 在接口GigabitEthernet1/0/2上配置出方向动态地址转换,允许使用地址组0中的地址对匹配ACL 2000的报文进行源地址转换,并在转换过程中使用端口信息。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] nat outbound 2000 address-group 0
[Router-GigabitEthernet1/0/2] quit
# 配置处理基于会话业务的备份组,即仅允许将匹配ACL 2000的报文引流到备份组cgn的主节点上进行业务处理。
[Router] session service-location acl 2000 failover-group cgn
# 开启流量触发分配端口块功能。
[Router] nat port-block flow-trigger enable
# 以上配置完成后,Host A能够访问外网服务器,Host B和Host C无法访问外网服务器。通过查看如下显示信息,可以验证以上配置成功。
[Router] display nat all
NAT address group information:
Totally 1 NAT address groups.
Address group 0:
Port range: 1024-65535
Port block size: 300
Extended block number: 1
Failover group name: cgn
Address information:
Start address End address
202.38.1.2 202.38.1.3
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/2
ACL: 2000 Address group: 0 Port-preserved: N
NO-PAT: N Reversible: N
Service card: ---
Config status: Active
NAT logging:
Log enable : Disabled
Flow-begin : Disabled
Flow-end : Disabled
Flow-active : Disabled
Port-block-assign : Disabled
Port-block-withdraw : Disabled
Port-alloc-fail : Enabled
Port-block-alloc-fail : Disabled
Port-usage : Disabled
Port-block-usage : Enabled(40%)
NAT mapping behavior:
Mapping mode : Connection-dependent
NAT ALG:
DNS : Disabled
FTP : Enabled
H323 : Disabled
ICMP-ERROR : Enabled
ILS : Disabled
MGCP : Disabled
NBT : Disabled
PPTP : Disabled
RTSP : Enabled
RSH : Disabled
SCCP : Disabled
SIP : Disabled
SQLNET : Disabled
TFTP : Disabled
XDMCP : Disabled
# 通过以下显示命令,可以看到系统当前可分配的动态端口块总数和已分配的动态端口块个数。
[Router] display nat statistics
Total session entries: 0
Total EIM entries: 0
Total inbound NO-PAT entries: 0
Total outbound NO-PAT entries: 0
Total static port block entries: 0
Total dynamic port block entries: 430
Active static port block entries: 0
Active dynamic port block entries: 1
支持DS-Lite协议的私网IPv4主机(即:DS-Lite host)和公网IPv4 network通过IPv6网络相连。通过在DS-Lite host和AFTR之间建立DS-Lite隧道,并在AFTR连接IPv4 network接口上配置NAT,为DS-Lite host动态分配端口块,实现IPv4私网穿越IPv6网络访问IPv4公网。
图2-15 DS-Lite B4端口块动态映射配置组网图
在开始下面的配置之前,请确保DS-Lite host和AFTR之间IPv6报文路由可达。
(1) 配置AFTR端
# 配置接口GigabitEthernet1/0/1的地址。
<Router> system-view
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] ip address 20.1.1.1 24
[Router-GigabitEthernet1/0/1] quit
# 配置接口GigabitEthernet1/0/2(隧道的实际物理接口)的地址。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] ipv6 address 1::2 64
[Router-GigabitEthernet1/0/2] quit
# 创建模式为AFTR端DS-Lite隧道的接口Tunnel2。
[Router] interface tunnel 2 mode ds-lite-aftr
# 配置Tunnel2接口的IP地址。
[Router-Tunnel2] ip address 30.1.2.2 255.255.255.0
# 配置Tunnel2接口的源接口为GigabitEthernet1/0/2。
[Router-Tunnel2] source gigabitethernet 1/0/2
[Router-Tunnel2] quit
# 在接口GigabitEthernet1/0/1上开启DS-Lite隧道功能。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] ds-lite enable
[Router-GigabitEthernet1/0/1] quit
# 配置备份组。
[Router] failover group cgn id 1
[Router-failover-group-cgn] bind slot 4 primary
[Router-failover-group-cgn] quit
# 配置NAT地址组0,包含两个外网地址20.1.1.11和20.1.1.12,外网地址的端口范围为1024~65535,端口块大小为300。
[Router] nat address-group 0
[Router-address-group-0] failover-group cgn
[Router-address-group-0] address 20.1.1.11 20.1.1.12
[Router-address-group-0] port-range 1024 65535
[Router-address-group-0] port-block block-size 300
[Router-address-group-0] quit
# 配置IPv6 ACL 2100,仅允许对1::/64网段的IPv6源地址进行地址转换。
[Router] acl ipv6 basic 2100
[Router-acl-ipv6-basic-2100] rule permit source 1::/64
[Router-acl-ipv6-basic-2100] quit
# 配置流分类cgn,配置流行为cgn,将匹配IPv6 ACL 2100的流量引入备份组cgn。
[Router] traffic classifier cgn
[Router-classifier-cgn] if-match acl ipv6 2100
[Router-classifier-cgn] quit
[Router] traffic behavior cgn
[Router-behavior-cgn] redirect failover-group cgn
[Router-behavior-cgn] quit
# 配置QoS策略,将流分类与流行为进行绑定。
[Router] qos policy cgn
[Router-qospolicy-cgn] classifier cgn behavior cgn
[Router-qospolicy-cgn] quit
# 在接口GigabitEthernet1/0/2上配置引流规则。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] qos apply policy cgn inbound
[Router-GigabitEthernet1/0/2] quit
# 在接口GigabitEthernet1/0/1上配置出方向动态地址转换,允许使用地址组0中的地址对匹配IPv6 ACL 2100的DS-Lite B4报文进行源地址转换,并在转换过程中使用端口信息。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] nat outbound ds-lite-b4 2100 address-group 0
[Router-GigabitEthernet1/0/1] quit
# 配置处理基于会话业务的备份组,即仅允许将匹配IPv6 ACL 2100的报文引流到备份组cgn的主节点上进行业务处理。
[Router] session service-location acl ipv6 2100 failover-group cgn
# 开启流量触发分配端口块功能。
[Router] nat port-block flow-trigger enable
(2) 配置DS-Lite host
配置DS-Lite host的IPv4地址为10.0.0.1,IPv6地址为1::1/64,并配置DS-Lite tunnel路由。(具体配置过程略)
# 完成上述配置后,在AFTR上执行display interface tunnel命令,可以看出Tunnel接口处于up状态。(具体显示信息略)
# 从DS-Lite host上可以ping通IPv4 Application server。
C:\> ping 20.1.1.2
Pinging 20.1.1.2 with 32 bytes of data:
Reply from 20.1.1.2: bytes=32 time=51ms TTL=255
Reply from 20.1.1.2: bytes=32 time=44ms TTL=255
Reply from 20.1.1.2: bytes=32 time=1ms TTL=255
Reply from 20.1.1.2: bytes=32 time=1ms TTL=255
Ping statistics for 20.1.1.2:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 1ms, Maximum = 51ms, Average = 24ms
# 通过以下显示命令,可以看到出方向动态地址转换的配置信息。
[Router] display nat outbound
NAT outbound information:
Totally 1 NAT outbound rules.
Interface: GigabitEthernet1/0/1
DS-Lite B4 ACL: 2100 Address group: 0 Port-preserved: N
NO-PAT: N Reversible: N
Service card: ---
Config status: Active
# 通过以下显示命令,可以看到系统当前可分配的动态端口块总数和已分配的动态端口块个数。
[Router] display nat statistics
Slot 1:
Total session entries: 0
Total EIM entries: 0
Total inbound NO-PAT entries: 0
Total outbound NO-PAT entries: 0
Total static port block entries: 0
Total dynamic port block entries: 430
Active static port block entries: 0
Active dynamic port block entries: 1
# 通过以下显示命令,可以看到生成的DS-Lite B4动态端口块表项。
[Router] display nat port-block dynamic ds-lite-b4
Local VPN DS-Lite B4 addr Global IP Port block Connections
--- 1::1 20.1.1.11 1024-1323 1
Total mappings found: 1
主机通过PPPoE接入Router,并连接到外部网络。Router作为BRAS设备对主机提供接入服务,同时通过CGN单板提供地址转换功能,并支持1:1方式的CGN板间热备。具体要求如下:
· 主机作为PPPoE Client,运行PPPoE客户端拨号软件。
· Router作为PPPoE Server,与RADIUS服务器配合对主机进行远程CHAP认证,并通过PPP地址池为主机分配IP地址。
· Router与认证、授权、计费RADIUS服务器交互报文时的共享密钥均为expert,向RADIUS服务器发送的用户名要携带域名。
· Router上实现NAT与BRAS联动,在主机通过认证并分配私网地址的同时,为该主机分配公网地址和端口块。
· CGN 1和CGN 2组成备份组,CGN 1为备份组中的主节点,CGN 2为备份组中的备节点。开启会话业务热备份功能,实现板间热备。主备切换期间,用户的业务不会受到影响。
图2-16 PPPoE用户认证与NAT联动支持板间热备配置组网图
# 在RADIUS服务器上设置与Router交互报文时的共享密钥为expert;添加PPP用户名及密码。(略)
# 创建RADIUS方案rad。
<Router> system-view
[Router] radius scheme rad
# 配置主计费服务器和主认证服务器的IP地址为10.0.0.1,并配置主认证服务器的认证端口号为1812。
[Router-radius-rad] primary accounting 10.0.0.1
[Router-radius-rad] primary authentication 10.0.0.1 1812
# 配置与认证服务器交互报文时的共享密钥为明文expert。
[Router-radius-rad] key authentication simple expert
# 配置向RADIUS服务器发送的用户名要携带域名。
[Router-radius-rad] user-name-format with-domain
[Router-radius-rad] quit
# 创建名称为user的用户组。
[Router] user-group user
[Router-ugroup-user] quit
# 创建ISP域cgn。
[Router] domain name cgn
# 为PPP用户配置AAA认证方法为RADIUS认证/授权/计费。
[Router-isp-cgn] authentication ppp radius-scheme rad
[Router-isp-cgn] authorization ppp radius-scheme rad
[Router-isp-cgn] accounting ppp radius-scheme rad
# 配置用户地址类型为私网IPv4地址。该地址类型的用户认证成功后将触发NAT地址分配。
[Router-isp-cgn] user-address-type private-ipv4
# 设置ISP域cgn下的用户授权属性为user-group。
[Router-isp-cgn] authorization-attribute user-group user
[Router-isp-cgn] quit
# 配置PPP地址池1,IP地址范围为10.210.0.2到10.210.0.255。
[Router] ip pool 1 10.210.0.2 10.210.0.255
# 配置虚拟模板接口1的参数,采用CHAP认证对端,并使用PPP地址池1为对端分配IP地址。
[Router] interface virtual-template 1
[Router-Virtual-Template1] ppp authentication-mode chap domain cgn
[Router-Virtual-Template1] remote address pool 1
[Router-Virtual-Template1] ip address 10.210.0.1 24
# 在接口GigabitEthernet1/0/1上启用PPPoE Server协议,并将该接口与虚拟模板接口1绑定。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] pppoe-server bind virtual-template 1
[Router-GigabitEthernet1/0/1] quit
# 配置ACL 3000,仅允许对内部网络中10.210.0.0/24网段的用户报文进行地址转换。
[Router] acl advanced 3000
[Router-acl-ipv4-adv-3000] rule 0 permit ip source 10.210.0.0 0.0.0.255 user-group user
[Router-acl-ipv4-adv-3000] quit
# 配置备份组。
<Router> system-view
[Router] failover group cgn id 1
[Router-failover-group-cgn] bind slot 4 primary
[Router-failover-group-cgn] bind slot 5 secondary
[Router-failover-group-cgn] quit
# 配置流分类cgn,配置流行为cgn,将匹配ACL 3000的流量引入备份组cgn。
[Router] traffic classifier cgn
[Router-classifier-cgn] if-match acl 3000
[Router-classifier-cgn] quit
[Router] traffic behavior cgn
[Router-behavior-cgn] redirect failover-group cgn
[Router-behavior-cgn] quit
# 配置QoS策略,将流分类与流行为进行绑定。
[Router] qos policy cgn
[Router-qospolicy-cgn] classifier cgn behavior cgn
[Router-qospolicy-cgn] quit
# 在接口GigabitEthernet1/0/1上配置引流规则。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy cgn inbound
[Router-GigabitEthernet1/0/1] quit
# 开启会话业务热备份功能。
[Router] session synchronization enable
# 配置地址组1与备份组cgn绑定,包含一个外网地址111.8.0.200,外网地址的端口范围为1024~65535,端口块大小为10。
[Router] nat address-group 1
[Router-address-group-1] failover-group cgn
[Router-address-group-1] port-block block-size 10
[Router-address-group-1] port-range 1024 65535
[Router-address-group-1] address 111.8.0.200 111.8.0.200
# 在接口GigabitEthernet1/0/2上配置出方向动态地址转换,允许使用地址组1中的地址对匹配ACL 3000的报文进行源地址转换,并在转换过程中使用端口信息。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] ip address 111.8.0.101 255.255.255.0
[Router-GigabitEthernet1/0/2] nat outbound 3000 address-group 1
[Router-GigabitEthernet1/0/2] quit
# 配置处理基于会话业务的备份组,即仅允许将匹配ACL 3000的报文引流到备份组cgn的主节点上进行业务处理。
[Router] session service-location acl 3000 failover-group cgn
# 主机安装PPPoE客户端软件后,使用正确的用户名和密码,即可通过设备Router接入到Internet。当用户登录成功后,可以在Router上通过display ppp access-user命令查看PPP用户的详细信息(包括分配的私网IP地址、转换后的公网IP地址以及端口块),同时还可以通过以下显示命令看到为该用户生成的动态端口块表项。
[Router] display nat port-block dynamic
Slot 1:
Local VPN Local IP Global IP Port block Connections Extend
--- 10.210.0.4 111.8.0.200 1024-1033 1 ---
Total mappings found: 1
# 正常情况下,由备份组cgn的主节点处理业务。
[Router] display failover group
Stateful failover local group information:
ID Name Primary Secondary Active status
1 cgn 4 5 Primary
# 备份组cgn的主节点故障时,由备节点处理业务。
[Router] display failover group
Stateful failover local group information:
ID Name Primary Secondary Active status
1 cgn 4 5 Secondary
Router A、Router B和Router C属于同一自治系统,要求它们之间通过IS-IS协议达到IP网络互连的目的。主机通过PPPoE接入Router A,并连接到外部网络。Router A对主机提供接入服务,同时通过CGN单板提供地址转换功能;使用路由方式实现流量切换,即正常情况下,流量在Router A上的CGN单板进行地址转换;当Router A上的CGN单板故障时,流量切换到Router C旁挂的Router B上的CGN单板进行地址转换,具体要求如下:
· 主机作为PPPoE Client,运行PPPoE客户端拨号软件。
· Router A作为PPPoE Server,与RADIUS服务器配合对主机进行远程CHAP认证,并通过PPP地址池为主机分配IP地址。
· Router A与认证、授权、计费RADIUS服务器交互报文时的共享密钥均为expert,向RADIUS服务器发送的用户名要携带域名。
· Router A与NAT联动,在主机通过认证后,由Router A给主机分配私网地址,同时由CGN单板为其分配公网地址和端口块。
· 当Router A上的CGN单板故障时,由Router B上的CGN单板分配公网地址和端口块。
· Router A、Router B和Router C运行IGP协议(如IS-IS协议)和BGP协议,通过IGP协议发布私网路由,通过BGP协议发布公网路由。
(1) 配置IP地址
请按照图2-17配置各接口的IP地址和子网掩码,并配置Router B的Loopback 0的IP地址为111.1.1.2/32,具体配置过程略。
(2) 配置IGP协议与BGP协议,本举例中仅体现Router B和Router C之间建立IBGP连接的过程,其他配置过程略。
(3) 配置Router A
# 在RADIUS服务器上设置与Router A交互报文时的共享密钥为expert;添加PPP用户名及密码。(略)
# 创建RADIUS方案rad。
<RouterA> system-view
[RouterA] radius scheme rad
# 配置主计费服务器和主认证服务器的IP地址为10.1.1.1,并配置认证端口号为1812。
[RouterA-radius-rad] primary accounting 10.1.1.1 1812
[RouterA-radius-rad] primary authentication 10.1.1.1 1812
# 配置与计费、认证服务器交互报文时的共享密钥为明文expert。
[RouterA-radius-rad] key accounting simple expert
[RouterA-radius-rad] key authentication simple expert
# 配置向RADIUS服务器发送的用户名要携带域名。
[RouterA-radius-rad] user-name-format with-domain
[RouterA-radius-rad] quit
# 创建ISP域cgn。
[RouterA] domain name cgn
# 为PPP用户配置AAA认证方法为RADIUS认证/授权/计费。
[RouterA-isp-cgn] authentication ppp radius-scheme rad
[RouterA-isp-cgn] authorization ppp radius-scheme rad
[RouterA-isp-cgn] accounting ppp radius-scheme rad
# 配置用户地址类型为私网IPv4地址。该地址类型的用户认证成功后将触发NAT地址分配。
[RouterA-isp-cgn] user-address-type private-ipv4
[RouterA-isp-cgn] quit
# 配置PPP地址池1,IP地址范围为10.210.0.2到10.210.0.255。
[RouterA] ip pool 1 10.210.0.2 10.210.0.255
# 配置虚拟模板接口1的参数,采用CHAP认证对端,并使用PPP地址池1为对端分配IP地址。
[RouterA] interface virtual-template 1
[RouterA-Virtual-Template1] ppp authentication-mode chap domain cgn
[RouterA-Virtual-Template1] remote address pool 1
[RouterA-Virtual-Template1] ip address 10.210.0.1 24
[RouterA-Virtual-Template1] quit
# 在接口GigabitEthernet1/0/1上启用PPPoE Server协议,并将该接口与虚拟模板接口1绑定。
[RouterA] interface gigabitethernet 1/0/1
[RouterA-GigabitEthernet1/0/1] pppoe-server bind virtual-template 1
[RouterA-GigabitEthernet1/0/1] quit
# 将指定slot配置为备份组cgn的主节点。
[RouterA] failover group cgn id 1
[RouterA-failover-group-cgn] bind slot 4 primary
[RouterA-failover-group-cgn] quit
# 配置ACL规则3333,仅允许对内部网络中10.210.0.0/24网段的用户报文进行地址转换。
[RouterA] acl advanced 3333
[RouterA-acl-ipv4-adv-3333] rule permit ip source 10.210.0.0 0.0.0.255
[RouterA-acl-ipv4-adv-3333] quit
# 配置流分类3333的匹配规则为:匹配ACL 3333的报文;为流行为cgn配置重定向动作,重定向到备份组cgn。
[RouterA] traffic classifier 3333
[RouterA-classifier-3333] if-match acl 3333
[RouterA-classifier-3333] quit
[RouterA] traffic behavior cgn
[RouterA-behavior-cgn] redirect failover-group cgn
[RouterA-behavior-cgn] quit
# 配置QoS策略,将流分类与流行为进行绑定。
[RouterA] qos policy cgn
[RouterA-qospolicy-cgn] classifier 3333 behavior cgn
[RouterA-qospolicy-cgn] quit
# 在接口GigabitEthernet1/0/1上配置引流规则。
[RouterA] interface gigabitethernet 1/0/1
[RouterA-GigabitEthernet1/0/1] qos apply policy cgn inbound
[RouterA-GigabitEthernet1/0/1] quit
# 配置NAT地址组0,包含外网地址100.64.216.251,外网地址的端口范围为1024~65535,端口块大小为300,并将地址组0与备份组cgn绑定。
[RouterA] nat address-group 0
[RouterA-address-group-0] address 100.64.216.251 100.64.216.251
[RouterA-address-group-0] port-range 1024 65535
[RouterA-address-group-0] port-block block-size 300
[RouterA-address-group-0] failover-group cgn
[RouterA-address-group-0] quit
# 在接口GigabitEthernet1/0/2上配置出方向动态地址转换,允许使用地址组0中的地址对匹配 ACL 3333的报文进行源地址转换。
[RouterA] interface gigabitethernet 1/0/2
[RouterA-GigabitEthernet1/0/2] ip address 51.1.1.1 24
[RouterA-GigabitEthernet1/0/2] isis enable 1
[RouterA-GigabitEthernet1/0/2] nat outbound 3333 address-group 0
[RouterA-GigabitEthernet1/0/2] quit
# 配置处理基于会话业务的备份组,即仅允许将匹配ACL 3333的报文引流到备份组cgn的主节点上进行业务处理。
[RouterA] session service-location acl 3333 failover-group cgn
# 开启集中式备份分布式CGN功能。
[RouterA] nat centralized-backup enable
(4) 配置Router B
# 与Router C建立IBGP连接。
[RouterB] bgp 65009
[RouterB-bgp-default] router-id 2.2.2.2
[RouterB-bgp-default] peer 41.1.1.2 as-number 65009
[RouterB-bgp-default] peer 41.1.1.2 connect-interface loopback 0
[RouterB-bgp-default] address-family ipv4 unicast
[RouterB-bgp-default-ipv4] peer 41.1.1.2 enable
[RouterB-bgp-default-ipv4] quit
[RouterB-bgp-default] quit
# 配置备份组cgn。
<RouterB> system-view
[RouterB] failover group cgn id 1
[RouterB-failover-group-cgn] bind slot 9 primary
[RouterB-failover-group-cgn] quit
# 配置NAT地址组1,包含外网地址172.18.217.1~172.18.217.250,外网地址的端口范围为1024~65535,端口块大小为300。
[RouterB] nat address-group 1
[RouterB-address-group-1] failover-group cgn
[RouterB-address-group-1] address 172.18.217.1 172.18.217.250
[RouterB-address-group-1] port-range 1024 65535
[RouterB-address-group-1] port-block block-size 300
[RouterB-address-group-1] quit
# 配置ACL规则,ACL 3333,仅允许对内部网络中10.210.0.0/24网段的用户报文进行地址转换。
[RouterB] acl basic 3333
[RouterB-acl-ipv4-basic-3333] rule 0 permit ip source 10.210.0.0 0.0.255.255
[RouterB-acl-ipv4-basic-3333] quit
# 配置流分类3333的匹配规则为:匹配ACL 3333的报文;为流行为cgn配置重定向动作,重定向到备份组cgn。
[RouterB] traffic classifier 3333
[RouterB-classifier-3333] if-match acl 3333
[RouterB-classifier-3333] quit
[RouterB] traffic behavior cgn
[RouterB-behavior-cgn] redirect failover-group cgn
[RouterB-behavior-redirect] quit
# 配置QoS策略,将流分类与流行为进行绑定。
[RouterB] qos policy cgn
[RouterB-qospolicy-cgn] classifier 3333 behavior cgn
[RouterB-qospolicy-cgn] quit
# 在接口GigabitEthernet1/0/1上配置引流规则,并配置出方向动态地址转换,允许使用地址组1中的地址对匹配 ACL 3333的报文进行源地址转换。
[RouterB] interface gigabitethernet 1/0/1
[RouterB-GigabitEthernet1/0/1] qos apply policy cgn inbound
[RouterB-GigabitEthernet1/0/1] nat outbound 3333 address-group 1
[RouterB-GigabitEthernet1/0/1] quit
# 配置处理基于业务的备份组,即仅允许将匹配ACL 3333的报文引流到备份组nat的主节点上进行业务处理。
[RouterB] session service-location acl 3333 failover-group cgn
# 使能流量触发分端口块开关。
[RouterB] nat port-block flow-trigger enable
(5) 配置Router C
# 与Router B建立IBGP连接。
[RouterC] bgp 65009
[RouterC-bgp-default] router-id 3.3.3.3
[RouterC-bgp-default] peer 41.1.1.1 as-number 65009
[RouterC-bgp-default] address-family ipv4 unicast
[RouterC-bgp-default-ipv4] peer 41.1.1.1 enable
[RouterC-bgp-default-ipv4] quit
[RouterC-bgp-default] quit
# 配置ACL规则,ACL 3333,仅允许对内部网络中10.210.0.0/24网段的用户报文进行地址转换。
<RouterC> system-view
[RouterC] acl basic 3333
[RouterC-acl-ipv4-basic-3333] rule 0 permit ip source 10.210.0.0 0.0.255.255
[RouterC-acl-ipv4-basic-3333] quit
# 创建策略节点ipv4,并设置匹配ACL 3333的报文的下一跳为111.1.1.2,即Router B的Loopback 0的IP地址。
[RouterC] policy-based-route ipv4 permit node 0
[RouterC-GigabitEthernet1/0/2] if-match acl 3333
[RouterC-GigabitEthernet1/0/2] apply next-hop 111.1.1.2
[RouterC-GigabitEthernet1/0/2] quit
# 在接口GigabitEthernet1/0/2上对该接口转发的报文应用策略ipv4。
[RouterC] interface gigabitethernet 1/0/2
[RouterC-GigabitEthernet1/0/2] ip policy-based-route ipv4
[RouterC-GigabitEthernet1/0/2] quit
# 主机安装PPPoE客户端软件后,使用正确的用户名和密码,即可通过设备RouterA接入到Internet。当用户登录成功后,可以在RouterA上通过display ppp access-user命令查看PPP用户的详细信息(包括分配的私网IP地址、转换后的公网IP地址以及端口块),同时还可以通过以下显示命令看到为该用户生成的动态端口块表项。
[RouterA] display nat port-block dynamic
Local VPN Local IP Global IP Port block Connections Extend
--- 10.210.0.4 100.64.216.251 1024-1323 1 ---
Total mappings found: 1
# 拔出Router A上的CGN单板,用户登录成功后,在RouterB上可以看到为该用户生成的动态端口块表项。
[RouterB] display nat port-block dynamic
Local VPN Local IP Global IP Port block Connections Extend
--- 10.210.0.4 172.18.217.1 1024-1323 0 ---
Total mappings found: 1
主机通过PPPoE接入Router,并连接到外部网络。Router作为BRAS设备对主机提供接入服务,同时为主机提供地址转换服务。具体要求如下:
· 主机作为PPPoE Client,运行PPPoE客户端拨号软件。
· Router作为PPPoE Server,与RADIUS服务器配合对主机进行远程CHAP认证,并通过PPP地址池为主机分配IP地址。
· Router与认证、授权、计费RADIUS服务器交互报文时的共享密钥均为expert,向RADIUS服务器发送的用户名要携带域名。
· Router上实现NAT与BRAS联动,即在主机通过认证并分配私网地址的同时,为该主机分配公网地址和端口块。
· 当用户流量超过预分配端口资源,成功分配增量端口块后,设备会将私网IP地址及其对应的公网IP和增量端口块等信息上报给RADIUS服务器,实现溯源的目的。
图2-18 PPPoE用户认证与NAT联动配置组网图
# 在RADIUS服务器上设置与Router交互报文时的共享密钥为expert;添加PPP用户名及密码。(略)
# 创建RADIUS方案rad。
<Router> system-view
[Router] radius scheme rad
# 配置主计费服务器和主认证服务器的IP地址为10.0.0.1,并配置主认证服务器的认证端口号为1812。
[Router-radius-rad] primary accounting 10.0.0.1
[Router-radius-rad] primary authentication 10.0.0.1 1812
# 配置与认证服务器交互报文时的共享密钥为明文expert。
[Router-radius-rad] key authentication simple expert
# 配置向RADIUS服务器发送的用户名要携带域名。
[Router-radius-rad] user-name-format with-domain
[Router-radius-rad] quit
# 创建名称为user的用户组。
[Router] user-group user
[Router-ugroup-user] quit
# 创建ISP域cgn。
[Router] domain name cgn
# 为PPP用户配置AAA认证方法为RADIUS认证/授权/计费。
[Router-isp-cgn] authentication ppp radius-scheme rad
[Router-isp-cgn] authorization ppp radius-scheme rad
[Router-isp-cgn] accounting ppp radius-scheme rad
# 配置用户地址类型为私网IPv4地址。该地址类型的用户认证成功后将触发NAT地址分配。
[Router-isp-cgn] user-address-type private-ipv4
# 设置ISP域cgn下的用户授权属性为user-group。
[Router-isp-cgn] authorization-attribute user-group user
[Router-isp-cgn] quit
# 配置PPP地址池1,IP地址范围为10.210.0.2到10.210.0.255。
[Router] ip pool 1 10.210.0.2 10.210.0.255
# 配置虚拟模板接口1的参数,采用CHAP认证对端,并使用PPP地址池1为对端分配IP地址。
[Router] interface virtual-template 1
[Router-Virtual-Template1] ppp authentication-mode chap domain cgn
[Router-Virtual-Template1] remote address pool 1
[Router-Virtual-Template1] ip address 10.210.0.1 24
# 在接口GigabitEthernet1/0/1上启用PPPoE Server协议,并将该接口与虚拟模板接口1绑定。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] pppoe-server bind virtual-template 1
[Router-GigabitEthernet1/0/1] quit
# 配置ACL 3000,仅允许对内部网络中10.210.0.0/24网段的用户报文进行地址转换。
[Router] acl advanced 3000
[Router-acl-ipv4-adv-3000] rule 0 permit source 10.210.0.0 0.0.0.255 user-group user
[Router-acl-ipv4-adv-3000] quit
# 配置备份组。
<Router> system-view
[Router] failover group cgn id 1
[Router-failover-group-cgn] bind slot 4 primary
[Router-failover-group-cgn] bind slot 5 secondary
[Router-failover-group-cgn] quit
# 配置流分类cgn,配置流行为cgn,将匹配ACL 3000的流量引入备份组cgn。
[Router] traffic classifier cgn
[Router-classifier-cgn] if-match acl 3000
[Router-classifier-cgn] quit
[Router] traffic behavior cgn
[Router-behavior-cgn] redirect failover-group cgn
[Router-behavior-cgn] quit
# 配置QoS策略,将流分类与流行为进行绑定。
[Router] qos policy cgn
[Router-qospolicy-cgn] classifier cgn behavior cgn
[Router-qospolicy-cgn] quit
# 在接口GigabitEthernet1/0/1上配置引流规则。
[Router] interface gigabitethernet 1/0/1
[Router-GigabitEthernet1/0/1] qos apply policy cgn inbound
[Router-GigabitEthernet1/0/1] quit
# 配置地址组1,包含一个外网地址111.8.0.200,外网地址的端口范围为1024~65535,端口块大小为10, 增量端口块数量为5。
[Router] nat address-group 1
[Router-address-group-1] failover-group cgn
[Router-address-group-1] port-block block-size 10 extended-block-number 5
[Router-address-group-1] port-range 1024 65535
[Router-address-group-1] address 111.8.0.200 111.8.0.200
# 在接口GigabitEthernet1/0/2上配置出方向动态地址转换,允许使用地址组1中的地址对匹配ACL 3000的报文进行源地址转换,并在转换过程中使用端口信息。
[Router] interface gigabitethernet 1/0/2
[Router-GigabitEthernet1/0/2] ip address 111.8.0.101 255.255.255.0
[Router-GigabitEthernet1/0/2] nat outbound 3000 address-group 1
[Router-GigabitEthernet1/0/2] quit
# 开启NAT设备将私网IP与增量端口块的映射关系上报给RADIUS服务器的功能。
[Router] nat extended-port-block report-radius enable
# 主机安装PPPoE客户端软件后,使用正确的用户名和密码,即可通过设备Router接入到Internet。
当用户上线成功,当用户流量超过预分配端口资源,成功分配增量端口块后,可以在Router上通过命令display ppp access-user user-type pppoe verbose查看增量端口块的信息。
[Router] display ppp access-user user-type pppoe verbose
Basic:
Interface: BAS0
PPP index: 0x140002383
User ID: 0x20000002
Username: test
Domain: pppradius
Access interface: GigabitEthernet1/0/1
Service-VLAN/Customer-VLAN: -/-
VXLAN ID: -
MAC address: 0010-9400-0003
IP address: 10.210.0.4
IPv6 address: -
IPv6 PD prefix: -
IPv6 ND prefix: -
User address type: private-ipv4
VPN instance: -
Access type: PPPoE
Authentication type: CHAP
PPPoE:
Session ID: 1
AAA:
Authentication state: Authenticated
Authorization state: Authorized
Realtime accounting switch: Open
Realtime accounting interval: 120s
Login time: 2018-08-06 15:57:49:628
Accounting start time: 2018-08-06 15:57:49:647
Online time(hh:mm:ss): 00:33:52
Accounting state: Accounting
Acct start-fail action: Online
Acct update-fail action: Online
Acct quota-out action: Offline
Dual-stack accounting mode: Merge
Idle cut: 0 sec 0 bytes, direction: Both
Session timeout: -
Time remained: -
Traffic quota: -
Traffic remained: -
Redirect WebURL: -
ITA policy name: -
MRU: 1492 bytes
IPv4 MTU: 1492 bytes
IPv6 MTU: 1492 bytes
Subscriber ID: -
ACL&QoS:
User profile: -
Session group profile: -
User group acl: -
Inbound CAR: -
Outbound CAR: -
User inbound priority: -
User outbound priority: -
NAT:
Global IP address: 111.8.0.200
Port block: 1541-1650
Extended-block: 1651-1760/1761-1870/1871-1980/1981-2090/2091-2200
Flow Statistic:
IPv4 uplink packets/bytes: 639577859/81865963520
IPv4 downlink packets/bytes: 0/0
IPv6 uplink packets/bytes: 0/0
IPv6 downlink packets/bytes: 0/0
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!