[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

about EtherIP Header bug.


I found a bug(?) about Ethernet Tunneling function(bridge to a gif tunnel)
in OpenBSD.

In RFC3378 (EtherIP) , EtherIP Header defined the following.

   The 16-bit EtherIP header field consists of two parts: a 4-bit
   version field that identifies the EtherIP protocol version and a
   12-bit field reserved for future use.  The value of the version field
   MUST be 3 (three, '0011' binary).  The value of the reserved field
   MUST be 0 (zero).  Earlier versions of this protocol used an 8-bit
   header field.  The Xerox Ethernet Tunnel (XET) employed the 8-bit
   header.  The 16-bit header field provides memory alignment advantages
   in some implementation environments.

   In summary, the EtherIP Header has two fields:

      Bits 0-3:  Protocol version
      Bits 4-15: Reserved for future use

        0   1   2   3   4   5   6   7   8   9  10  11  12  13  14  15
     |               |                                               |
     |    VERSION    |                   RESERVED                    |
     |               |                                               |

                 Figure 2: EtherIP Header Format (in bits)

So, normal EtherIP Header value has "0x3000".

But OpenBSD's EtherIP Header value has "0x0300"(see sys/netinet/ip_ether.h).

Therefore, I think that OpenBSD has no interoperability 
other EtherIP products.

My Environment:
	System : OpenBSD 3.5
	Arch      : OpenBSD i386
	Machine : i386

Best Regards.
 Fujitsu I-Network Systems
 Kazuhiro Koga

Visit your host, monkey.org