信息来源:邪恶八进制信息安全团队(
www.eviloctal.com)
介绍
本文介绍在IPX网络上传送IP包,ARP包和一些非连接网络协议包的兼容实现方法。IPX是由Novell开始的,而此标准最早来自于Xerox的Internet数据报协议(IDP)。
描述
通常,本说明允许IPX网络用于支持任何可以使用IEEE 802.2数据链路层标准的网络。IPX用于支持IP网络及其任何类型的子网。通常在IPX数据报中封装IP数据报,并为IPX网络上的主机指定IP号,这些主机上可以运行基于IP的应用程序。能够在802.IPX数据内封装IP包的IP网关可以使IPX网络和Internet通信。
最大传输单元(MTU)
对于IPX来说是546字节,这里面还有802.2 LLC和SNAP头的8个字节,所以MTU的实际大小为538字节。
地址映射
对IP地址到802.IPX地址映射是使用ARP协议,使用方法和其它IEEE 802.X物理地址映射方法类似。然而802.IPX物理地址长度为10字节,而不是2个或6个字节,这10个字节由4字节IPX网络地址和6字节IPX结点地址组成。
广播地址
IPX包可以通过设置包头内的包类型域为0x14,目的网络域为本地网络号,目的结点域为0xffffff,IPX事件控制块的立即地址为0xffffff进行广播。
单播(unicast)地址
IPX包可以通过设置IPX包头内的包类型域为0x04,目的网络域和目的结点域为由地址解析找到的地址,以及IPX事件控制块的立即地址为目的结点的物理地址(或相应的IPX网桥地址)完成单播。
保留值
IPX套接字0x8060保留用于实现此协议。
实现
在IPX网络内封装Internet包被证明是有用的,下面是IP封装后的典型格式:
物理头,N字节
IPX头,30字节
802.2头,8字节
IP头,通常是20字节
TCP头,通常是20字节
TCP数据,可以多达498字节
在工作站支持IPX编程接口时,本文的实现被证明是直截了当的,唯一的改变就是悠现有的地址解析协议代码以使缓冲项目的大小大于硬件地址长度。这是为了使与IP地址相关的IPX网关地址和目的结点地址,和网络地址有足够空间保存。本文写成时还没有明显地在不支持IPX编程接收的系统进行实现的例子。因为这样首先要将IPX包和其它包区别开来,这种过程与物理媒介相关的。第二点,因为在主机2到主机1没有进行广播之前是不可能进行主机1到主机2的单播的,在两主机间可能的IPX网关的立即地址通过原先的广播包内的信息取得。第三点,所有这样的实现方法必须能够从Novell网桥或文件服务器中发现本地IPX网络号,这样不是不可以,就是太烦了。