2 * Defines ethernet packet types, similar to tcpdump's ethertype.h
4 * $Id: etypes.h,v 1.37 2003/11/27 21:09:42 guy Exp $
6 * Ethereal - Network traffic analyzer
7 * By Gerald Combs <gerald@ethereal.com>
8 * Copyright 1998 Gerald Combs
10 * This program is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU General Public License
12 * as published by the Free Software Foundation; either version 2
13 * of the License, or (at your option) any later version.
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
20 * You should have received a copy of the GNU General Public License
21 * along with this program; if not, write to the Free Software
22 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
29 * Maximum length of an IEEE 802.3 frame; Ethernet type/length values
30 * greater than it are types, Ethernet type/length values less than or
31 * equal to it are lengths.
33 #define IEEE_802_3_MAX_LEN 1500
36 #define ETHERTYPE_UNK 0x0000
40 * http://www.isi.edu/in-notes/iana/assignments/ethernet-numbers
41 * TCP/IP Illustrated, Volume 1
43 * tcpdump's ethertype.h
44 * http://www.cavebear.com/CaveBear/Ethernet/
45 * http://standards.ieee.org/regauth/ethertype/type-pub.html
48 #ifndef ETHERTYPE_VINES_IP
49 #define ETHERTYPE_VINES_IP 0x0bad
52 #ifndef ETHERTYPE_VINES_ECHO
53 #define ETHERTYPE_VINES_ECHO 0x0baf
56 #ifndef ETHERTYPE_TRAIN
58 * Created by Microsoft Network Monitor as a summary packet.
60 #define ETHERTYPE_TRAIN 0x1984
63 #ifndef ETHERTYPE_CGMP
64 #define ETHERTYPE_CGMP 0x2001
67 #ifndef ETHERTYPE_3C_NBP_DGRAM
68 #define ETHERTYPE_3C_NBP_DGRAM 0x3c07
72 #define ETHERTYPE_IP 0x0800
75 #ifndef ETHERTYPE_X25L3
76 #define ETHERTYPE_X25L3 0x0805
80 #define ETHERTYPE_ARP 0x0806
84 #define ETHERTYPE_DEC 0x6000
87 #ifndef ETHERTYPE_DNA_DL
88 #define ETHERTYPE_DNA_DL 0x6001
91 #ifndef ETHERTYPE_DNA_RC
92 #define ETHERTYPE_DNA_RC 0x6002
95 #ifndef ETHERTYPE_DNA_RT
96 #define ETHERTYPE_DNA_RT 0x6003
100 #define ETHERTYPE_LAT 0x6004
103 #ifndef ETHERTYPE_DEC_DIAG
104 #define ETHERTYPE_DEC_DIAG 0x6005
107 #ifndef ETHERTYPE_DEC_CUST
108 #define ETHERTYPE_DEC_CUST 0x6006
111 #ifndef ETHERTYPE_DEC_SCA
112 #define ETHERTYPE_DEC_SCA 0x6007
115 #ifndef ETHERTYPE_ETHBRIDGE
116 #define ETHERTYPE_ETHBRIDGE 0x6558 /* transparent Ethernet bridging */
119 #ifndef ETHERTYPE_REVARP
120 #define ETHERTYPE_REVARP 0x8035
123 #ifndef ETHERTYPE_DEC_LB
124 #define ETHERTYPE_DEC_LB 0x8038
127 #ifndef ETHERTYPE_ATALK
128 #define ETHERTYPE_ATALK 0x809b
131 #ifndef ETHERTYPE_SNA
132 #define ETHERTYPE_SNA 0x80d5
135 #ifndef ETHERTYPE_AARP
136 #define ETHERTYPE_AARP 0x80f3
139 #ifndef ETHERTYPE_IPX
140 #define ETHERTYPE_IPX 0x8137
143 #ifndef ETHERTYPE_VLAN
144 #define ETHERTYPE_VLAN 0x8100 /* 802.1Q Virtual LAN */
147 #ifndef ETHERTYPE_SNMP
148 #define ETHERTYPE_SNMP 0x814c /* SNMP over Ethernet, RFC 1089 */
151 #ifndef ETHERTYPE_WCP
152 #define ETHERTYPE_WCP 0x80ff /* Wellfleet Compression Protocol */
155 #ifndef ETHERTYPE_ISMP
156 #define ETHERTYPE_ISMP 0x81fd /* Cabletron Interswitch Message Protocol */
159 #ifndef ETHERTYPE_ISMP_TBFLOOD
160 #define ETHERTYPE_ISMP_TBFLOOD 0x81ff /* Cabletron Interswitch Message Protocol */
163 #ifndef ETHERTYPE_IPv6
164 #define ETHERTYPE_IPv6 0x86dd
167 #ifndef ETHERTYPE_SLOW_PROTOCOLS
168 #define ETHERTYPE_SLOW_PROTOCOLS 0x8809
171 #ifndef ETHERTYPE_PPP
172 #define ETHERTYPE_PPP 0x880b /* no, this is not PPPoE */
175 #ifndef ETHERTYPE_MPLS
176 #define ETHERTYPE_MPLS 0x8847 /* MPLS unicast packet */
179 #ifndef ETHERTYPE_MPLS_MULTI
180 #define ETHERTYPE_MPLS_MULTI 0x8848 /* MPLS multicast packet */
183 #ifndef ETHERTYPE_PPPOED
184 #define ETHERTYPE_PPPOED 0x8863 /* PPPoE Discovery Protocol */
187 #ifndef ETHERTYPE_PPPOES
188 #define ETHERTYPE_PPPOES 0x8864 /* PPPoE Session Protocol */
191 #ifndef ETHERTYPE_INTEL_ANS
192 #define ETHERTYPE_INTEL_ANS 0x886d /* Intel ANS (NIC teaming) http://www.intel.com/support/network/adapter/ans/probes.htm */
195 #ifndef ETHERTYPE_MS_NLB_HEARTBEAT
196 #define ETHERTYPE_MS_NLB_HEARTBEAT 0x886f /* MS Network Load Balancing heartbeat http://www.microsoft.com/technet/treeview/default.asp?url=/TechNet/prodtechnol/windows2000serv/deploy/confeat/nlbovw.asp */
199 #ifndef ETHERTYPE_EAPOL
200 #define ETHERTYPE_EAPOL 0x888e /* 802.1x Authentication */
203 #ifndef ETHERTYPE_PROFINET
204 #define ETHERTYPE_PROFINET 0x8892 /* PROFIBUS PROFInet protocol */
207 #ifndef ETHERTYPE_HYPERSCSI
208 #define ETHERTYPE_HYPERSCSI 0x889A /* HyperSCSI */
211 #ifndef ETHERTYPE_BRDWALK
212 #define ETHERTYPE_BRDWALK 0x88AE
215 #ifndef ETHERTYPE_LOOP
216 #define ETHERTYPE_LOOP 0x9000 /* used for layer 2 testing (do i see my own frames on the wire) */
219 #ifndef ETHERTYPE_RTNET
220 #define ETHERTYPE_RTNET 0x9021 /* RTNET protocol*/
223 #ifndef ETHERTYPE_RTCFG
224 #define ETHERTYPE_RTCFG 0x9022 /* RTCFG protocol*/
227 #ifndef ETHERTYPE_FCFT
228 /* type used to transport FC frames+MDS hdr internal to Cisco's MDS switch */
229 #define ETHERTYPE_FCFT 0xFCFC
232 extern const value_string etype_vals[];
234 #endif /* etypes.h */