I’ve been experimenting with EoIPv6 (/interface eoipv6) and noticed that it doesn’t use GRE like EoIP. It uses EtherIP (RFC 3378) instead.
A few notes about this.
-
EtherIP is archaic. RFC 3378, dated September 2002, ‘… describes the EtherIP, an early tunneling protocol, to provide informational and historical context …’, rather than for practical application.
-
EoIPv6 uses 12 reserved bits in the EtherIP header for the tunnel-id (0–4095). This is contrary to RFC 3378, which requires that these these bits MUST be 0 (zero).
-
The MikroTik implementation swaps the first four bits of the EtherIP header with the second four bits. If the tunnel-id is 1234 (0x4d2), then the EtherIP header is 0x43d2. (3 is the value of the version field, which MUST be 3.)
-
The overhead is low: two octets only.
-
It seems to be a hack, but it works.
However, given that it doesn’t use GRE, I doubt it will interoperate with other vendors’ equipment, but I can’t say anything definitive about this.