NAT转换 内外网ip地址映射.docx

上传人:b****5 文档编号:6828520 上传时间:2023-01-10 格式:DOCX 页数:12 大小:26.12KB
下载 相关 举报
NAT转换 内外网ip地址映射.docx_第1页
第1页 / 共12页
NAT转换 内外网ip地址映射.docx_第2页
第2页 / 共12页
NAT转换 内外网ip地址映射.docx_第3页
第3页 / 共12页
NAT转换 内外网ip地址映射.docx_第4页
第4页 / 共12页
NAT转换 内外网ip地址映射.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

NAT转换 内外网ip地址映射.docx

《NAT转换 内外网ip地址映射.docx》由会员分享,可在线阅读,更多相关《NAT转换 内外网ip地址映射.docx(12页珍藏版)》请在冰豆网上搜索。

NAT转换 内外网ip地址映射.docx

NAT转换内外网ip地址映射

NAT转换内外网ip地址映射

2010年08月09日星期一上午10:

15

------------------------基础学习-------------------

局域网内私服在internet公开的解决办法

nat转换

------------------------------------------------------

------------------------资料学习2------------------

-------------------------------------------------------

  局域网内公开的ip只有一个,除非你是在主机上建私服,否则你无法公开你的私服,只能在局域网内,解决的办法如下。

由于公网IP地址有限,不少ISP都采用多个内网用户通过代理和网关路由共用一个公网IP上INTERNET的方法,这样就限制了这些用户在自己计算机上架设个人网站,要实现在这些用户端架设网站,最关键的一点是,怎样把多用户的内网IP和一个他们唯一共享上网的IP进行映射!

就象在局域网或网吧内一样,虽然你可以架设多台服务器和网站,但是对外网来说,你还是只有一个外部的IP地址,怎么样把外网的IP映射成相应的内网IP地址,这应该是内网的那台代理服务器或网关路由器该做的事,对我们用私有IP地址的用户也就是说这是我们的接入ISP服务商(中国电信、联通、网通、铁通等)应该提供的服务,因为这种技术的实现对他们来说是举手之劳,

而对我们来说是比较困难的,首先得得到系统管理员的支持才能够实现。

因为这一切的设置必须在代理服务器上做的。

要实现这一点,可以用Windows2000Server的端口映射功能,除此之外Winroute

   Pro也具有这样的功能,还有各种企业级的防火墙。

而对于我们这些普通用户,恐怕还是用Windows2000Server最为方便。

先来介绍一下NAT,NAT(网络地址转换)是一种将一个IP地址域映射到另一个IP地址域技术,从而为终端主机提供透明路由。

NAT包括静态网络地址转换、动态网络地址转换、网络地址及端口转换、动态网络地址及端口转换、端口映射等。

NAT常用于私有地址域与公用地址域的转换以解决IP地址匮乏问题。

在防火墙上实现NAT后,可以隐藏受保护网络的内部拓扑结构,在一定程度上提高网络的安全性。

如果反向NAT提供动态网络地址及端口转换功能,还可以实现负载均衡等功能端口映射功能可以让内部网络中某台机器对外部提供WWW服务,这不是将真IP地址直接转到内部提供WWW服务的主机,如果这样的话,有二个蔽端,一是内部机器不安全,因为除了WWW之外,外部网络可以通过地址转换功能访问到这台机器的所有功能;二是当有多台机器需要提供这种服务时,必须有同样多的IP地址进行转换,从而达不到节省IP地址的目的。

端口映射功能是将一台主机的假IP地址映射成一个真IP地址,当用户访问提供映射端口主机的某个端口时,服务器将请求转到内部一主机的提供这种特定服务的主机;利用端口映射功能还可以将一台真IP地址机器的多个端口映射成内部不同机器上的不同端口。

端口映射功能还可以完成一些特定代理功能,比如代理POP,SMTP,TELNET等协议。

理论上可以提供六万多个端口的映射,恐怕我们永远都用不完的。

一、下面来介绍一下通过NAT共享上网和利用NAT来实现端口映射。

1、在Windows2000Server上,从管理工具中进入“路由和远程访问”(RoutingandRemoteAccess)服务,在服务器上鼠标右击,-》“配置并启用路由和远程访问”

2、点“下一步”

3、选“Internet连接服务器”,让内网主机可以通过这台服务器访问Internet.(最好先配置好NAT共享,让内网主机可以正常上网,不然的话,配好端口映射后再来配置NAT共享就有点麻烦了,弄的不好NAT还共享不了。

4、选“设置有网络地址转换(NAT)路由协议的路由器”,不要选“设置Internet连接共享(ICS)”.(ICS与NAT的区别在于使用的容易程度上,为了启用ICS,只需要选择一个复选框就可以了,而为了启用NAT,则需要更多的配置任务,此外,ICS用于小型网络上的原因还在于:

针对内部主机,它需要有一个固定的IP地址范围;针对与外部网络的通信,它被限制在单个公共IP地址上;它只允许单个内部网络接口。

5、先在此说一下我的网络情况:

Internet连接192.200.200.3(也是个内部地址,没办法,铁通的网络不太好,网速不快,价钱又贵,我的命真苦啊)宿舍内连接192.168.0.1(宿舍里连有局域网,共4台电脑,其中一台上装了Sambar5.1b5做的Web服务器,Web端口是80,待会就从外网(用192.200.200.55来替代)来访问这个192.168.0.2:

80上的网页)这台NAT主机上开通了IIS5.0,端口是80,用端口映射的办法把8081端口映射到内部主机192.168.0.2的80端口上。

6、在“路由和远程访问服务器安装向导”中选“Internet连接”(就是连向Internet的那个连接),点“下一步”。

7、选“完成”到此为止,NAT共享设置也就完成了,内部的主机也能上网了。

内部主机的网络设置如下:

IP地址范围是912.168.0.2~192.168.0.254,子网掩码为255.255.255.0,网关为192.168.0.1,DNS为ISP给的地址,我们的是211.98.xxx.xxx

二、利用NAT来映射端口

1、添加NAT协议。

右击“常规”,-》“新路由选择协议”

2、在“新路由选择协议”中选择“网络地址转换(NAT)”,点击“确定”

3、这样在“IP路由选择”中就多了一项“网络地址转换(NAT)”

4、右击“网络地址转换(NAT)”,添加“新接口”

5、在“网络地址转换(NAT)的新接口”中选择“Internet连接”(也就是连向Internet的那个连接,可不要选错咯)

6、在“网络地址转换-Internet连接属性”中选中“公用接口连接到Internet”,复选“转换TCP/UDP头(推荐)”

7、在“地址池“选项表里添加你需要提供端口重定向的起始地址与结束地址.(也就是你要拿出来搞端口映射的所有IP地址,一般情况下我们就一个IP地址,所以可以不用“地址池”不同之处后面再讲。

8、在“特殊端口“选项表里提供了你需要定向的数据连接协议(是TCP还是UDP协议,如Web和FTP就是TCP协议的),选准后“添加”

9、“添加特殊端口”,这里就是设置端口映射的核心了,把NAT主机的哪个端口映射到内网主机的哪个端口就在这里设置,由于设有“地址池”,所以可以在“公网地址”中添上“地址池”中的任一地址,这里添的是“192.200.200.3”,也就是我的地址,如果你在前面没有设置“地址池”,那么在这个选项页中“在此地址池项”为灰色不可选,你只能选“在此接口”,也就是你只有一个公网IP地址,这比较适合只有一个IP的朋友,可以不用“地址池”,何必做多余的设置呢?

假如有问题的话,还不是自找麻烦。

“传入端口”就是别人从网外访问有公网IP的NAT服务器的端口,这里设的为8080。

“专用地址和传出地址”就是内部主机的IP地址和提供特殊服务的端口,这里是把192.200.200.3上的8080端口映射到192.168.0.2上的80端口。

这就是TCP协议端口的重定向,至于UDP的定向页差不多,下图就是添加端口映射后的情况。

四、测试结果

在192.200.200.55出测试了一下NAT主机上的Web服务器和内网中192.168.0.2上建的Web服务器,得出结果如下:

(不好意思,中间改过一下端口号,192.200.200.3上的8081端口映射到192.168.0.2的80端口)

实现多服务器平衡负载转

用下面的方法可以实现多服务器平衡负载,为了方便说明,我就说有AS和BS两个服务器。

1、在AS配置并测试通过服务器

2、在Mud2Logsrv!

serveraddr.txt中加入一行,写入BS服务器IP

3、修改mirservergate_serverRunGatemirgate.ini中的IP为BS服务器的IP

4、将Mirserver文件夹复制到BS相同位置

5、运行除MIR200M2SERVER.EXE以外的所有程序

6、转到BS服务器,修改!

setup.txt中的所有IP为AS的IP

7、运行M2SERVER.EXE

8、OK,你会发现双机运行一个服务器了:

以上过程其实是把游戏后台和前台分离了。

我用的是一台主机:

主机上用除了MIR200以外的文件,就是登录的一些服务器

只把rungate服务器的监听地址指向MIR200服务器的地址

如:

主机A是192.168.0.1即除mir200以外的服务器

副机B是192.168.0.2即只运行mir200的服务器

副机B中的!

setup文件里的地址全部指向主机的外网地址,如:

61.128.128.10

主机A除了rungate中指向192.168.0.84其它服务器都指向61.128.128.10

还有一个loginsrv服务器的地址要改,好像改成

161.128.128.10192.168.0.261.128.128.10:

7100就行了

-------------------------------------------------------

------------------------实验演练1---------------------

-------------------------------------------------------

一.实现方式有三种:

1.静态转换:

2.动态转换:

3.端口复用:

二.地址类型:

1.内部局部地址:

内部网络中的地址范围;

2.内部全局地址:

路由器与外网相连的地址;

3.外部全局地址:

外部路由器的外部地址;

4.外部局部地址:

指外部目的主机在局域网的地址范围;

三.NAT并不是所有的数据流都支持的,可支持的数据流:

HTTP.TFTP.TELNET.NFS.NTP.FINGER等.

四.配置:

1.步骤:

先建立转换对应关系,然后在路由器的内部端口上启用入站转换,在外部接口上启用出站转换.

1.静态转换:

conft

interfaceserial0(外部端口)

ipadd61.169.62.129255.255.255.248

nosh

interfaceethernet0(内部端口)

ipadd192.168.10.1255.255.255.0

nosh

建立映射关系,(假设外部接口有好几个IP可用时,我们可用其他的地址)

ipnatinsidesource192.168.10.261.169.62.129

ipnatinsidesource192.168.10.3.61.168.62.130

应用到路由器的端口上:

interfaceserial0

ipnatoutside(在外部端口上启用出站转换)

interfaceethernet0

ipnatinside(在内部端口上启用入站转换)

五.动态转换:

1.步骤:

给路由器设置IP地址,建立一个允许地址范围的访问控制列表,建立一个可以转换的地址范围池,建立转换映射关系,应用到接口.示例:

conft

interfaces0

ipadd61.159.62.129255.255.255.192

interfacee0

ipadd192.168.10.1255.255.255.0

access-list1permit192.168.10.00.0.0.255

ipnatpooltest061.159.62.13061.159.62.190netmask255.255.255.192(格式为:

ipnatpool地址池名起始地址结束地址netmask掩码)

ipnatinsidesourcelist1pooltest0

interfaces0

ipnatoutside

interfacee0

ipnatinside

六.端口复用:

指同一个IP用不同的端口,有两种情况,如果有多外合法IP,可用另一个外部合法IP来进行转换,如果只有一个合法IP,就用这个IP来进行转换,示例:

1.多个合法IP的情况

conft

ints0

ipadd61.159.62.129255.255.255.248

inte0

ipadd192.168.10.1255.255.255.0

access-list1permit192.168.10.00.0.0.255

ipnatpooltest061.159.62.13061.159.62.130netmask255.255.255.248(注意此处用的是另一个合法IP,起止只有一个)

ipnatinsidesourcelist1pooltest0overload(注意此处)

interfaces0

ipnatoutside

interfacee0

ipnatinside

2.只有一个合法IP的情况

conft

ints0

ipadd61.159.62.129255.255.255.248

inte0

ipadd192.168.10.1255.255.255.0

access-list1permit192.168.10.00.0.0.255

ipnatinsidesourcelist1interfaces0overload(注意此处省略了地址池设置,增加了接口的标识)

interfaces0

ipnatoutside

interfacee0

ipnatinside

七.负载平衡:

假设有三台服务器10.1.1.1,10.1.1.2,10.1.1.3,使用一个虚拟主机10.1.1.127的地址来代表这三台服务器组成的服务器组,可以利用NAT技术来实现负载平衡.

步骤:

先设置路由器内外部接口IP,建立允许访问的地址列表(也就是这台虚拟主机),给真实服务器组建立一个转换池,建立映射关系,应用到接口.示例:

conft

ints0

ipadd61.158.20.22255.255.255.248

inte0

ipadd10.1.1.254255.255.255.0

access-list1permit10.1.1.127(注意此处允许的是虚拟主机地址)

ipnatpoolreal-host10.1.1.110.1.1.3prefix-length24typerotary

(real-host指地址池名称,后面地址指的转换的范围,prefix-length指掩码长度,rotary指循环使用)

ipnatinsidedestinationlist1poolreal-host(注意此处因为是让外部主机访问我们的服务器,所有相对于我们来说,他们要访问的是目的,也就是说,转换是外部主机的ip地址,他访问的是我的列表1中的地址,而我的这个列表1中的地址在我的地址池real-host中循环使用)

ints0

ipnatoutside

inte0

ipnatinside

八.地址的交叉处理:

如果两个局域网同一网段的主机想互相访问的话的,就涉及到地址交叉的问题,这时应该这样解决:

(假设都是10.1.1.0的网段)

1.设置内外部接口IP:

conft

interfaces0

ipadd172.69.232.182.255.255.255.0

interfacee0

ipadd10.1.1.254255.255.255.0

2.定义允许访问控制列表:

access-list1permit10.1.1.00.0.0.255

3.定义地址池:

ipnatpooltest0192.2.2.1192.2.2.254prefix-length24

ipnatpooltest1193.3.3.1193.3.3.254prefix-length24

4.定义映射关系:

ipnatinsidesourelist1pooltest0

ipnatousidesourelist1pooltest1

5.应用到接口:

interfaces0

ipnatoutside

interfacee0

ipnatinside

九.验证NAT:

1.显示当前存在的转换:

showipnattranslations

2.查看NAT的统计信息:

showipnatstatic

3.调试:

debugipnat

4.清除NATl转换表中的所有条目:

clearipnattranslation*

5.清除内部转换:

clearipnattranslationsinsidelocal-ipglobal-ip

6.清除外部转换:

clearipnattranslationsoutsidelocal-ipglobal-ip

-------------------------------------------------------

------------------------实验演练2---------------------

-------------------------------------------------------

网络工程师交换试验手册之十七:

NAT转换实验

实验目的:

理解NAT地址转换的原理,熟悉NAT转换的配置过程。

进一步理解NAT在扩展IP地址方面的巨大功效。

理解NAT如何将内部地址转换成外部地址的过程。

实验内容:

1.静态NAT

首先在R1上起2个环回接口loop0和loop1,为每一个loop口分配一个IP地址,模拟2台内部PC机,R1的S1看成到外网的接口。

而R3这里看成外部一台服务器。

PC机想要与R3通信,不许利用NAT来将内部PC地址转换成R1上S0的地址实现。

路由器的基本配置

  R1#showipintb

Interface                 IP-Address     OK?

MethodStatus               Prot

ocol

Ethernet0                 unassigned     YESunsetadministrativelydowndown

Loopback0                 192.168.2.1    YESmanualup                   up

Loopback1                 192.168.3.1    YESmanualup                   up

Serial0                   61.32.34.6     YESmanualup                   up

Serial1                   unassigned     YESunsetadministrativelydowndow

R2#showipintb

Serial0                   unassigned     YESTFTP  up                   up

Serial1                   61.32.34.5     YESmanualup                   up

此时用扩展PING以192.168.2.1和192.168.3.1为源以61.32.34.5为目的PING

R1#ping

Protocol[ip]:

TargetIPaddress:

%BadIPaddress

TargetIPaddress:

61.32.34.5

Repeatcount[5]:

Datagramsize[100]:

Timeoutinseconds[2]:

Extendedcommands[n]:

y

Sourceaddressorinterface:

192.168.2.1

Typeofservice[0]:

SetDFbitinIPheader?

[no]:

Validatereplydata?

[no]:

Datapattern[0xABCD]:

Loose,Strict,Record,Timestamp,Verbose[none]:

Sweeprangeofsizes[n]:

Typeescapesequencetoabort.

Sending5,100-byteICMPEchosto61.32.34.5,timeoutis2seconds:

.....

Successrateis0percent(0/5)

Sourceaddressorinterface:

192.168.3.1

显然无法ping通,即内部地址无法直接与外部地址通信,于是我们启用NAT转换。

◎启动NAT静态转换。

R1(config)#intloop0

R1(config-if)#ipnatinside定义内部接口

R1(config-if)#intloop1

R1(config-if)#ipnatinside定义内部接口

R1(config-if)#ints0

R1(config-if)#ipnatoutside定义外部接口

R1(config)#ipnatinsidesourcestatic192.168.2.161.32.34.6

定义将内部的接口地址静态的的一对一的转换为61.32.34.6

R1(config)#ipnatinsidesourcestatic192.168.3.161.32.34.7

定义将内部的接口地址静态的的一对一的转换为61.32.34.7

此时用扩展Ping以192.168.2.1和192.168.3.1为源以61.32.34.5为目的PING

R1#debugipnat开放debug进行ping包时候的抓包转换测试。

!

!

!

!

!

Successrateis100percent(5/5),round-tripmin/avg/max=32/32/36ms

00:

36:

36:

NAT:

s=192.168.2.1->61.32.34.6,d=61.32.34.5[20]

看到我们的源已经进行了转换,转换后的地址才可以与目的地址进行通信

00:

36:

36:

NAT*:

s=61.32.34.5,d=61.32.34.6->192.168.2.1[20]

00:

36:

36:

NAT:

s=192.16

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 理化生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1