由于公网IP地址有限,不少ISP都采用多个内网用户通过代理和网关路由共用一个公网IP上INTERNET的方法,这样就限制了这些用户在自己计算机上架设个人网站,要实现在这些用户端架设网站,最关键的一点是,怎样把多用户的内网IP和一个他们唯一共享上网的IP进行映射!就像在局域网或网吧内一样,虽然你可以架设多台服务器和网站,但是对外网来说,你还是只有一个外部的IP地址,怎么样把外网的IP映射成相应的内网IP地址,这应该是内网的那台代理服务器或网关路由器该做的事,对我们用私有IP地址的用户也就是说这是我们的接入ISP服务商(中国电信、联通、网通、铁通等)应该提供的服务,因为这种技术的实现对他们来说是举手之劳,而对我们来说是比较困难的,首先得得到系统管理员的支持才能够实现。因为这一切的设置必须在代理服务器上做的。
要实现这一点,可以用Windows 2000 Server 的端口映射功能,除此之外Winroute Pro也具有这样的功能,还有各种企业级的防火墙。而对于我们这些普通用户,恐怕还是用Windows 2000 Server最为方便。
端口映射功能是将一台主机的假IP地址映射成一个真IP地址,当用户访问提供映射端口主机的某个端口时,服务器将请求转到内部一主机的提供这种特定服务的主机;利用端口映射功能还可以将一台真IP地址机器的多个端口映射成内部不同机器上的不同端口。 端口映射功能还可以完成一些特定代理功能,比如代理POP,SMTP,TELNET等协议。理论上可以提供六万多个端口的映射,恐怕我们永远都用不完的。
一、下面来介绍一下通过NAT共享上网和利用NAT来实现端口映射。
1、在Windows 2000 Server上,从管理工具中进入“路由和远程访问”(Routing and Remote Access)服务,在服务器上鼠标右击,-》“配置并启用路由和远程访问”
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台电脑,其中一台上装了Sambar 5.1b5做的Web服务器,Web端口是80,待会就从外网(用192.200.200.55来替代)来访问这个192.168.0.2:80上的网页)这台NAT主机上开通了IIS 5.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.***.***
二、利用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端口)
http://masr.bloghome.cn/posts/131879.html
相信大家对BT应用已经耳熟能详了吧,但在感受BT应用所带来便利的同时,你是否想过搭建一台自己的BT服务器呢?假如你有一台拥有固定IP的服务器,那么你完全有能力自己维护一台BT服务器。当然,如果只有拨号式的宽带线路,同样可以完成这样的工作,只是需要对访问地址方面多做一些工作。特别有趣的是,如果我们想在自己的局域网里最高效的访问文件,BT服务器也可以帮我们做到。我们选择的BT服务器软件是由一鹤软件开发的MyBT 3.0,这是一款运行在Windows平台下的BT服务器软件,只有1.2MB大小,大家可以在http://www.yhhe.net下载。成功安装并启动MyBT的主程序,我们可以看到有4个主要的选项页,分别是管理服务、目录设置、选项设置和系统设置。
管理服务选项页用于设置BT服务器的启动管理,我们如果是在NT内核的操作系统上安装MyBT,可以将其安装为后台服务。如果不将MyBT安装为系统服务,也可以通过控制台窗口的方式启动服务器,这种方式的优点是可以方便的在控制台窗口中查看服务运行的状态。MyBT还提供了一个被称作一键安装服务器的功能,该功能会将原有的配置文件和数据备份,之后启动服务并重新创建超级用户。
MyBT内置了一个微型的Web服务器,用于提供一个可以定制栏目的BT种子发布页面。默认的端口设置情况下,我们可以通过http://localhost:6969来访问该页面。目录设置选项页包含了MyBT的各种主要的配置选项。服务目录设置区用于配置包括文件发布目录、种子上传目录、Web页面目录、日志目录等所有目录的位置,这些目录都是以MyBT的安装主目录为根;配置文件设置区与此同理。值得一提的是Web页面设置区域,通过该部分可以替换发布页面上的各种元素。我们也可以直接修改这些文件,从而更新发布页面的外观,这样在其它用户访问该页面的时候,可以看到我们更个性化的一面。而在下载分类设置区域我们还可以调整种子发布的分类和相应的栏目菜单图片。选项设置和系统设置选项页里还有很多附加的设置,大家可以根据自己的需要进行调整。需要注意的一点是,在前面带有“!!”标记的配置项是不推荐设置的。
以上介绍了通过MyBT架设BT服务器的大部分知识,大家之后将自己要共享的文件和制作好的种子上传就可以了。
什么是BT?BitTorrent(中文全称比特流,简称BT,又称变态下载)是一个多点下载的P2P软件。不象FTP那样只有一个发送源,BT有多个发送点,当你在下载时,同时也在上传,使大家都处在同步传送的状态。
BT的工作原理?
BT首先在上传者端把一个文件分成了多个部分,客户端甲在服务器随机下载了第N部分,客户端乙在服务器随机下载了第M部分。
这样甲的BT就会根据情况到乙的电脑上去拿乙已经下载好的第M部分,乙的BT就会根据情况去到甲的电脑上去拿甲已经下载好的第N部分。
BT下载会比http、FTP快吗?
从原理上来说,由于BT先进的下载方式减轻了服务器端的负荷,同时加快了客户端的下载速度。所以BT下载的人越多,速度越快。而传统的服务器下载方式,速度取决于你的带宽和服务器分给你的带宽。
什么叫种子?
BitTorrent适合于提供10M以上的文件下载,小的文件可集中于同一目录统一提供下载
RMVB、AVI等类型的电影文件最适合通过BitTorrent方式共享,经一个多月的测试,对于600M以上电影,50K上传带宽(如ADSL)的服务器,同时提供下载的文件不要多于2个,100K上传带宽同时提供3、4个文件下载最合适,100K以上上传带宽可按此类推
A)
下载python(约8M)
http://www.python.org/ftp/python/2.3/Python-2.3a2.exe
安装到c:\python23
B)
安装BitTorrent服务器程序(约130k)
http://bitconjurer.org/BitTorrent/BitTorrent-3.1.zip
解压到c:\bittorrent-3.1
C)
在c:\bittorret-3.1目录建立三个批处理文件:
1.bat
c:\python23\python bttrack.py --port 6969 --dfile dstate
2.bat
c:\python23\python btmakemetafile.py c:\avi\demo.avi
http://myiporhostsname:6969/announce
3.bat
c:\python23\python btdownloadheadless.py --url
http://myiporhostsname/demo.avi.torrent --saveas c:\avi\demo.avi
D)
如果没有安装或运行WEB服务器,安装或运行WEB服务器
E)
假设本机的域名是demo.vip.com,WEB服务器目录是c:\httpd
要将c:\movies\thehours目录里的avi电影和字幕文件进行共享,执行如下步骤:
a.
执行1.bat
b.
将2.bat中的c:\avi\demo.avi改成c:\movies\thehours,将http://myiporhostsname/改成http://demo.vip.com/
执行2.bat
如果执行正常,应在c:\movies目录下生成thehours.torrent文件,将此文件拷到c:\httpd
c.
将3.bat中的http://myiporhostsname/demo.avi.tor...vi改成c:\movies
执行3.bat
如果执行正常,程序将读取文件,完成后显示percent done: 100.0的信息并不断刷新
执行完上述三步后你就可以发布你的共享文件,
http://demo.vip.com/thehours.torren...�馗粗葱?、3步
BitTorrent工作原理,BitTorrent分为tracker和client两部分。
以发布一个软件为实例:
先安装一个tracker服务器,此服务器需要相对稳定的为client提供服务。
然后将要发布的软件打包成一个,或多个文件。用<btmakemetafile>程序对该文件进行分析
btmakemetafile,会将该文件分成多个段和创建checksum信息以保证下载数据的正确性,
btmakemetafile,会创建一个包含tracker服务器信息,文件分段和checksum信息的,以.torrent
为扩展名的很小的文件,然后用<btdownloadheadless.py>程序发布第一个client, 每个client都
会和tracker建立连接,因为第一个client为起始client,所以他必须包含完整的文件。
现在你可以发布.torrent文件了,当二个人(client2)开始下载的时候,会和tracker服务器建立联系,
已取得已有client的信息(如client1),他会依照.torrent的文件划分规则开始向client1下载数据。
比如将发布的文件分为10段,这时他开始下在第一段,当client3下载的时候tracker会自动告诉他从
client2下载文件的第一段,而从client1下载文件的其他段,以次类推,每个client可以同时从其他
client那里下在他们已有的数据段,而下载的同时,也向其他client提供自己已下载的数据段,从而
不仅提高了大家的下载速度也减轻了第一个release者的带宽压力。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)