xref: /freebsd/share/man/man4/vlan.4 (revision a3e8fd0b7f663db7eafff527d5c3ca3bcfa8a537)
1.\"
2.\" Copyright (c) 2001 Yar Tikhiy
3.\" All rights reserved.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\"    notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\"    notice, this list of conditions and the following disclaimer in the
12.\"    documentation and/or other materials provided with the distribution.
13.\"
14.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24.\" SUCH DAMAGE.
25.\"
26.\" $FreeBSD$
27.\"
28.Dd July 25, 2001
29.Dt VLAN 4
30.Os
31.Sh NAME
32.Nm vlan
33.Nd IEEE 802.1Q VLAN network interface
34.Sh SYNOPSIS
35.Cd device vlan
36.\"
37.Sh DESCRIPTION
38The
39.Nm
40driver demultiplexes frames tagged according to
41the IEEE 802.1Q standard into logical
42.Nm
43network interfaces, which allows routing/bridging between
44multiple VLANs through a single switch trunk port.
45.Pp
46Each
47.Nm
48interface is created at runtime using interface cloning.
49This is
50most easily done with the
51.Xr ifconfig 8
52.Cm create
53command or using the
54.Va cloned_interfaces
55variable in
56.Xr rc.conf 5 .
57.Pp
58To function, a
59.Nm
60interface must be assigned a parent interface and
61numeric VLAN tag using
62.Xr ifconfig 8 .
63A single parent can be assigned to multiple
64.Nm
65interfaces provided they have different tags.
66The parent interface is likely to be an ethernet card connected
67to a properly configured switch port.
68The VLAN tag should match one of those set up in the switched
69network.
70.Pp
71The
72.Nm
73driver supports physical devices that do
74the VLAN demultiplexing in firmware.
75The
76.Cm link0
77flag should be set on a
78.Nm
79interface
80.Pq Em not on its parent
81using
82.Xr ifconfig 8
83in that case to indicate that hardware support for
84the 802.1Q VLANs is present in its parent.
85.\"
86.Ss "Selecting the Right Network Interface Card to Run VLANs Through"
87By now, the only NICs that have both hardware support and proper
88driver hooks for the 802.1Q VLAN technology in
89.Fx
90are
91.Xr bge 4 ,
92.Xr em 4 ,
93.Xr gx 4 ,
94.Xr nge 4 ,
95.Xr ti 4 ,
96and
97.Xr txp 4 .
98.Pp
99The rest of the ethernet NICs supported by
100.Fx
101can run
102VLANs using software emulation in the
103.Nm
104driver.
105However, most of them lack the capability
106of transmitting and/or receiving oversized frames.
107Using such a NIC as a parent interface
108implies a reduced MTU on the corresponding
109.Nm
110interfaces.
111In the modern Internet, this is likely to cause
112.Xr tcp 4
113connectivity problems due to massive, inadequate
114.Xr icmp 4
115filtering that breaks the Path MTU Discovery mechanism.
116.Pp
117The NICs that support oversized frames are as follows:
118.Bl -tag -width ".Xr fxp 4 " -offset indent
119.It Xr dc 4
120supports long frames for
121.Nm
122natively.
123.It Xr de 4
124requires defining
125.Dv BIG_PACKET
126in the
127.Pa /usr/src/sys/pci/if_de.c
128source file and rebuilding the kernel
129or module.
130The hack works only for the 21041, 21140, and 21140A chips.
131.It Xr fxp 4
132supports long frames for
133.Nm
134natively.
135.It Xr sis 4
136supports long frames for
137.Nm
138natively.
139.It Xr ste 4
140supports long frames for
141.Nm
142natively.
143.It Xr tl 4
144has support for long frames.
145.It Xr tx 4
146supports long frames for
147.Nm
148natively.
149.It Xr xl 4
150supports long frames only if the card is built on a newer chip
151(Cyclone and above).
152.El
153.Pp
154Note:
155Unless marked as having native support for
156.Nm ,
157the above drivers don't inform the
158.Nm
159driver about their long frame handling capability.
160Just increase the MTU of a
161.Nm
162interface if it appears to be lower than 1500 bytes after
163attaching to a parent known to support long frames.
164.Sh SEE ALSO
165.Xr ifconfig 8
166.Sh BUGS
167No 802.1Q features except VLAN tagging are implemented.
168