下载中心  |   网站地图  |   站内搜索  |   加入收藏
*新更新
业界动态
产品信息
安恒动态
技术文章


安恒公司 / 技术文章 / 网络管理与网络测试 / 网络基础 / 网络测试基础:动态IP地址的捕获及应用
网络测试基础:动态IP地址的捕获及应用
2002-03-27          阅读:


  *、IP地址与IP地址的动态分配

  1. IP地址基本概念

  Internet依靠TCP/IP协议,在全球范围内实现不同硬件结构、不同操作系统、不同网络系统的互联。在Internet上,每*个节点都依靠唯*的IP地址互相区分和相互联系。IP地址是*个32位二进制数的地址,由4个8位字段组成,每个字段之间用点号隔开,用于标识TCP/IP宿主机。

  每个IP地址都包含两部分:网络ID和主机ID。网络ID标识在同*个物理网络上的所有宿主机,主机ID标识该物理网络上的每*个宿主机,于是整个Internet上的每个计算机都依靠各自唯*的IP地址来标识。

  IP地址构成了整个Internet的基础,它是如此重要,每*台联网的计算机无权自行设定IP地址,有*个统*的机构—IANA负责对申请的组织分配唯*的网络ID,而该组织可以对自己的网络中的每*个主机分配*个唯*的主机ID,正如*个单位无权决定自己在所属城市的街道*称和门牌号,但可以自主决定本单位内部的各个办公室编号*样。

  2. 静态IP与动态IP

  IP地址是*个32位二进制数的地址,理论上讲,有大约40亿(2的32次方)个可能的地址组合,这似乎是*个很大的地址空间。实际上,根据网络ID和主机ID的不同位数规则,可以将IP地址分为A(7位网络ID和24位主机ID)、B(14位网络ID和16位主机ID)、C(21位网络ID和8位主机ID)三类,由于历史原因和技术发展的差异,A类地址和B类地址几乎分配殆尽,目前能够供全球各国各组织分配的只有C类地址。所以说IP地址是*种非常重要的网络资源。

  对于*个设立了因特网服务的组织机构,由于其主机对外开放了诸如WWW、FTP、E-mail等访问服务,通常要对外公布*个固定的IP地址,以方便用户访问。当然,数字IP不便记忆和识别,人们更习惯于通过域*来访问主机,而域*实际上仍然需要被域*服务器(DNS)翻译为IP地址。例如,你的主页地址是www.myhost.com,用户可以方便地记忆和使用,而域*服务器会将这个域*翻译为101.12.123.234,这才是你在网上的真正地址。

  而对于大多数拨号上网的用户,由于其上网时间和空间的离散性,为每个用户分配*个固定的IP地址(静态IP)是非常不可取的,这将造成IP地址资源的*大浪费。因此这些用户通常会在每次拨通ISP的主机后,自动获得*个动态的IP地址,该地址当然不是任意的,而是该ISP申请的网络ID和主机ID的合法区间中的某个地址。拨号用户任意两次连接时的IP地址很可能不同,但是在每次连接时间内IP地址不变。  

  二、点对点TCP/IP连接

  1. 点对点TCP/IP连接与IP地址

  *个运行TCP/IP协议接入因特网的计算机必须拥有*个唯*的IP地址,才能与网上的其他计算机进行网络通讯。实际上,在任何时刻Internet连接都能由4个要素来描述:源IP 地址、源地址端口号、目的IP 地址和目的地址端口号。

  2. 点对点TCP/IP连接的间接实现

  由于大多数上网用户每次上网都自动获得*个动态的IP地址,这就使两台计算机之间建立直接、方便的点对点TCP/IP连接存在*定障碍。解决的办法是通过间接的方式进行连接,即通信双方同时登录到某个提供服务的主机上,由该主机建立双方的间接连接,网络电话、网络寻呼、网络游戏大都使用这*方法。随着技术的成熟和发展,这种网络连接服务可以提供诸如网络会议、多方通话、多方游戏等服务,已经突破了双机连接的局限。

  3. 点对点TCP/IP连接的直接实现

  支持直接TCP/IP连接的软件很多,例如微软的网络电话软件NetMeeting,唯*的前提就是双方必须在联网时相互获得对方的动态IP地址,或者更简单地,只要知道被呼叫方的IP地址即可,这类似于知道被叫方的电话号码即可建立电话联系。于是关键问题就是捕捉和交换各自的动态IP地址,或者捕捉和发布自己的动态IP地址以等待呼叫进而建立连接。

  三、动态IP地址的捕捉与发布

  1. 动态IP地址的捕捉

  有许多方法和工具来实现动态IP地址的捕捉,Windows 95/98提供了*个IP 配置 (WINIPCFG) 实用程序,使用方法是单击“开始-运行”,在“打开”框中键入:winipcfg,出现程序窗口后,可以单击“详细信息”进行查看。IP配置实用程序允许用户或管理员查看当前IP地址和其他与网络配置有关的有用信息,有关配置信息包括主机*、DNS服务器、IP地址、网络掩码等。可以重置*个或多个IP地址。“释放”或“更新”按钮分别释放或更新*个IP地址。如果希望释放或更新所有IP 地址,请单击“全部释放”或“全部更新”。其他工具也可以实现本机IP地址的查询。

  2.动态IP地址的发布

  可以将得到的动态IP地址更新到自己的主页上,这样所有访问者都可以通过该地址呼叫主页的所有者,建立点对点的TCP/IP连接。

  四、动态IP地址捕捉发布工具—DynamIP

  知道了原理,就可以借助工具来完成这*过程。DynamIP就是*个很好的动态捕捉与发布工具。DynamIP的主要功能有:

  1. DUN/RAS Dialer with Event Driven Program Launcher:具有事件驱动功能的拨号工具,可根据用户要求或者自动定时进行拨号,并且可以在诸如“新连接建立”或“连接终止”等事件的驱动下运行/关闭其他应用程序,当网络流量低于设定值时可以自动终止联结,这对于无人值守下载大软件时特别有用。

  2. Uploader(Dynamic IP address poster):文件上载工具(动态IP地址发布)。DynamIP可以将你的动态IP地址发布在指定的Web页面上,并自动地将该页面上载到服务器。当然也可以用来更新和上载任意文件,例如用来定期上载图形文件,而该文件是利用数码相机自动定期拍摄的,于是该主页就成了*个现场直播的页面。

  3. DIPS Client:DIPS客户端软件,DIPS(Dynamic IP Server)是动态IP服务器的简称,在申请了*个免费账户后,动态IP服务器可以在主页中显示*个指向你的动态IP的URL,形式为:http://postmodem.com/dips/<你的账户*>。

  这*功能允许网上用户通过该URL访问你的本地主页,这是指在本地主机安装的Web服务器(例如个人Web服务器)。当你要调试主页或者无法找到*个提供满意的免费主页服务器,或者你认为上载主页太浪费时间时,这项功能就显得尤为重要,目前的虚拟域*服务与此不同的是,虚拟域*服务要求你的主页必须安放在具有固定域*的主页服务器上,然后才能提供转移访问,而动态IP服务器则可以随时跟踪你的动态IP,并将访问者转移到你的本地Web服务器上。只要你联网并且你的本地Web服务器正在运行,DynamIP可以自动地确定你的DIPS信息是否需要更新到动态IP服务器。配合DIPS,用户可以在不上载任何文件的情况下进行Web聊天。

  4. POP mail checker:电子信箱检查,可*多检查5个不同的POP3账户,并在新邮件到来后以可视或声音信号进行提示,自动运行E-mail客户端软件取信。

  5. IP chat:点对点IP聊天,类似IRC,但是不需要任何IRC服务器,DynamIP可以在用户指定IP地址区间内扫描,你可以向所有聊天成员或者特定IP地址广播消息,你可以向其他聊天成员打招呼以引起对方注意并建立*个私人聊天。DynamIP支持微软网络电话软件MS NetMeeting。

  6. WEBchat:Web聊天。你的主页访问者可以利用浏览器直接与你对话,即使对方没有安装DynamIP,前提是你在主页中安装了页面,该页面将被DynamIP动态更新,浏览器必须支持forms,Netscape和Internet Explorer,毫无疑问都支持forms。访问者可以在forms中填写语句,然后按submit按钮,该语句被发送到你的计算机(利用DynamIP捕获的动态IP)。可以与功能3配合实现本地Web聊天,则不必上载主页到任何服务器。

  7. HTTPscan:HTTP扫描。DynamIP可以在用户指定IP地址区间内扫描,并以超文本文件格式生成*个包含所有被搜索到的HTTP服务器的清单。用途之*是当你与某人进行点对点IP聊天时,你可以立即访问对方的主页。

  8. PC Clock Synchronizer:时钟同步。DynamIP可以从NTP服务器获得**的日期和时间以校准你的机器时钟,另外也可以用来部分地解决“千年虫”问题。

  五、DynamIP的安装、设置

  1. DynamIP的安装

  DynamIP的安装只有*个条件,那就是你的Windows系统中必须有VB6.0的运行库—MSVBVM60.DLL。该文件没有包含在DynamIP的软件包中,用户必须从微软公司VB官方站点下载,文件*是Vbrun60new.exe,它是自动安装文件,文件长度为1MB。

  2. DynamIP的设置

  DynamIP的基本原理是很简单的,DynamIP将利用模板文件(Template)中的各项形式参数来更新*个本地文件,该文件包含了你的当前动态IP地址,然后DynamIP自动上载该文件到你的个人主页服务器,于是其他访问你的主页的用户可以利用该页面上的动态IP地址信息与你建立连接,实现各种网络应用;或者DynamIPS更新你的DIPS信息到动态IP服务器,所有访问该服务器的用户可以被转移到你的本地Web服务器上。所以在设置和准备DynamIP的时候,*切工作都是围绕这个模板文件和你的动态IP地址进行的。

  DynamIP的主要功能是Uploader文件上载工具(动态IP地址发布),本文将以此为例介绍DynamIP的设置,其他各项功能的设置类似。运行DynamIP,选择setup-uploader,则进入设置窗口,各项参数如下:

  Active:打开/关闭此项服务;

  Remote Host:你的主页所在的FTP主机地址,注意不要填写主机上的路径;

  Login:你的FTP账户*

  Password:你的FTP账户口令;这三项参数使得DynamIP可以登录到你的FTP主机,自动上载更新的文件,通常填写的是存放主页的主机地址。

  Template Online:联机模板文件,该文件将用来生成包含你的IP地址的动态本地文件(LocalFile),模板文件不会被更新。本地文件和模板文件*字不能相同,否则DynamIP不会正常工作。如果此项填写“”,则DynamIP将上载未更新的本地文件,可以用来上载数码相机拍摄的图片进行动态直播,参看“refresh every”。

  Template OFFline:脱机模板文件,通常与联机模板相同,如果你想在脱机之前上载*个不同的页面,你可以选择*个不同的模板文件,此项可以填写“”,功能同上。

  Local File:本地动态文件的路径和文件*,以联机或者脱机模板文件为样式更新的文件,包含用户当前动态IP地址等信息。

  Remote File:存放在FTP服务器上的远程动态文件的路径和文件*,本地动态文件将上载和覆盖该文件,不要填写服务器的域*或者IP地址。

  IP:联机模板文件中的IP地址形式参数,该参数将在联机时被用户当前的动态IP地址所替换,DynamIP默认的形式参数是NOT.ON.LINE.NOW,通常没有必要改动,若改动,则此项内容必须与模板文件中的形式参数*完全相同。模板文件中还包含了其他形式参数,如IP、DateTime、WEBchat、HTTP Server、FTP Server,这些形式参数都将在联机时被DynamIP自动替换,因此*好不要随便改动,即使改动,也要注意每个形式参数的*称不得相同

  ,并且各项内容必须与模板文件中的形式参数*完全相同。

  post last IP(OFFline):张贴上次IP地址,脱机模板文件中代表上次IP地址的形式参数,默认值为( is the default value)。此项内容必须与模板文件中的形式参数*完全相同。

  DateTime:联机模板文件中的日期时间形式参数。

  HTTP Server/Port:联机模板文件中的HTTP服务器/端口形式参数,这里的HTTP服务器系建立在本地主机上的HTTP服务器(例如个人Web服务器),DynamIP用你的当前动态IP地址替换该参数,以便将访问者转移到你的本地Web服务器。默认值为:“default value is HTTP Server NOT available. ”默认端口值为:80。

  FTP Server/Port:联机模板文件中的FTP服务器/端口形式参数,含义同上,只是服务器为本地FTP服务器。默认值为:“FTP Server NOT available”,默认端口值为:21。

  FTP UserID:联机模板文件中的FTP用户ID形式参数,默认值为:“anonymous”,可以改变为其他账户*

  六、DynamIP应用实例

  假如网上任意两个用户(实际上是计算机)能够相互知道对方的IP地址,则双方就能利用TCP/IP建立直接的点对点网上连接,进行信息沟通。更进*步,主叫方只要获得了被叫方的IP地址,就可以发出呼叫、建立连接、实现应用,如利用网络电话直接通话或者发送文件。DynamIP正是抓住了建立点对点IP连接的关键环节,捕捉并发布用户的当前动态IP地址,以便接收其他用户的呼叫。以下为DynamIP应用举例。

  1. 点对点网络电话

  在主页中添加下面*行语句:

  我正在网上,请给我打电话

  若访问者通过IE浏览器访问该页面,点击该超链接将会运行网络电话软件NetMeeting呼叫IP地址为111.222.123.123的计算机,如果对方的NetMeeting处于等待状态,则可以接收到呼叫,并进行通话。

  微软公司的浏览器支持callto协议,可以用NetMeeting呼叫该超链接指定的IP地址。但是Netscape的浏览器不支持callto,解决的办法是改为*个指向快速拨号文件的超链接,这样无论是在IE还是在Netscape中,打开该拨号文件都会运行网络电话软件NetMeeting。

  语句如下:

   我正在网上,请给我打电话

  这里ls.cnf是*个NetMeeting的快速拨号文件,记录了被叫方的IP地址,内容如下:

  [ConferenceShortcut]

  ConfName=111.222.123.123

  Address=111.222.123.123

  CallFlags=65543

  Transport=1

  类似的语句还有:click here to call me,可以激活Vocaltech Iphone。

  以上工作可以直接利用DynamIP的联机模板文件来实现,DynamIP将利用模板文件更新本地动态文件,上载并覆盖远程动态文件,主页的访问者看到的是包含当前IP地址的超链接,点击超链接将会激活网络电话软件,建立点对点网络电话连接服务。网络电话NetMeeting支持利用服务器实现的间接连接和呼叫对方IP地址的直接点对点连接,这里使用的是后者。如果你上载了脱机文件,访问者将得知你不在网上。

  2. IP chat:点对点IP聊天,类似IRC,但是不需要任何IRC服务器,因为双方已经知道IP地址。注意要在Setup--pchat中打开Active。工具栏中有用于呼叫、扫描、睡眠/唤醒的各项功能按钮。

  3. WEBchat:Web聊天,你的主页访问者可以利用浏览器直接与你对话,即使对方没有安装DynamIP,前提是你在主页中安装了页面,该页面将被DynamIP动态更新。

  用户可以决定上载联机文件或者脱机文件,以便及时通知访问者自己是否联网。

  4. 动态IP的个人Web服务器:若已经在本地主机安装了个人Web服务器,可以利用DIPS服务,将访问者转移到你的本地主机。这需要申请*个免费账户。网址是:

  http://postmodem.com/dips-admin/

  七、总结与提示

  DynamIP可以捕获和发布用户的当前动态IP地址,从而使点对点的IP连接成为可能,这些是网络传呼软件无法做到的。另外,对于每*种基本功能,如果能够巧妙地结合其他方法,往往能实现更复杂的应用。例如,你是否想过在运行TCP/IP的局域网上使用DynamIP的强大功能呢?

  同时应该注意到,DynamIP更像是为高*网络用户准备的发烧*工具。在网上公布自己的动态IP地址固然有利于沟通,但同时也带来了相当大的风险,因为黑客用以搜索和攻击目标的坐标就是IP地址,许多流行黑客工具甚至只需要*个输入参数—你的IP地址。因此,*好不要在存放重要资料的计算机上进行这些高*网络应用试验。
 
 

责任编辑: admin
Email给朋友 打印本文
版权所有·安恒公司 Copyright © 2004   epc.anheng.com.cn   All Rights Reserved    
      北京市海淀区*体南路9号 主语国际商务中心4号楼8层 安恒公司(邮编100048) 电话:010-88018877