动态IP地址的捕获及其应用
动态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