On Wed, Jun 07, 2017 at 07:32:18AM +0100, Jason McIntyre wrote:
> On Wed, Jun 07, 2017 at 02:51:42PM +1000, David Gwynne wrote:
> > > 
> > > you are breaking the format of this page if you start to move specific
> > > subsytems into the main body.
> > > 
> > > that makes things less clear. for example, can i use the parent-device
> > > stuff on any type of interface or just vlan? if it's vlan related, how
> > > can i tell that?
> > 
> > the "parent" ioctls are generic, but it is only implemented in vlan 
> > currently. i have a plan to replace "carpdev", "syncdev", and "pppoedev" 
> > with it, but id like to finish the vlan stuff before going further.
> > 
> 
> so it sounds like it should be in vlan for now.

cool.

> 
> > vnetid is used by both vlan and vxlan at the moment. i have a diff to add 
> > support for it to gre, while adding egre (ethernet over gre) and nvgre 
> > interfaces that also support a network identifier.
> > 
> > > 
> > > the text reads fine, but i'd rather you tried to integrate it into the
> > > vlan section. if there are errors in there let's remove them.
> > > 
> > > but if it's the case that none of this stuff is specific to vlan, then i
> > > guess it makes sense to do it your way (but then you'd have to take care
> > > when documenting stuff like parent-device to say in what situations it
> > > makes sense).
> > 
> > im happy to take direction here. i could also move things like the ethernet 
> > options (arp, -arp, instance, wol, -wol) into their own section.
> > 
> 
> well, that would be a separate diff.
> 
> > how would you say that vnetid is supported by both vlan and some tunnel 
> > interfaces? would you put it in the tunnel section, the vlan section, or 
> > both, or a new section?
> > 
> > dlg
> > 
> 
> just like it is just now.
> 
> i know that the way that ifconfig(8) is split up is not perfect. that is
> really just a reflection of how complex a tool ifconfig is. by complex i
> mean it can do a lot of different stuff. the format of the page as-is
> now just kind of happened. i'm not saying we can't (or shouldn;t) change
> it, just that if we do, we'd want to try and keep it consistent.
> 
> why not just add your one option to the vlan section, which is what it's
> relevant to, for now. if in the future you make it work in other areas,
> we can see whether it warrants a shuffle.

well, vnetid and parent replace the vlan and vlandev parameters.

how about this as a start?

as an aside, should i fix vlan.4 so it uses capitals on the 802.1
things consistently? capitals are preferred, right?

Index: ifconfig.8
===================================================================
RCS file: /cvs/src/sbin/ifconfig/ifconfig.8,v
retrieving revision 1.282
diff -u -p -r1.282 ifconfig.8
--- ifconfig.8  12 May 2017 15:11:02 -0000      1.282
+++ ifconfig.8  7 Jun 2017 07:54:52 -0000
@@ -1666,46 +1666,48 @@ device will try to establish a data conn
 .Bk -words
 .Nm ifconfig
 .Ar vlan-interface
-.Op Cm vlan Ar vlan-tag
-.Op Oo Fl Oc Ns Cm vlandev Ar parent-interface
+.Oo Fl Oc Ns Cm vnetid Ar vlan-tag
+.Oo Fl Oc Ns Cm parent Ar parent-interface
 .Ek
 .nr nS 0
 .Pp
-The following options are available for a
+The following options are available for
 .Xr vlan 4
-interface:
+and
+.Xr svlan 4
+interfaces:
 .Bl -tag -width Ds
-.It Cm vlan Ar vlan-tag
-Set the vlan tag value
-to
+.It Cm vnetid Ar vlan-tag
+Set the vlan tag value to
 .Ar vlan-tag .
-This value is a 12-bit number which is used to create an 802.1Q
-vlan header for packets sent from the vlan interface.
-This value cannot be changed once it is set for an interface.
-.It Cm vlandev Ar parent-interface
-Associate with interface
+This value is a 12-bit number which is used in the 802.1Q or 802.1AD
+headers in packets handled by
+.Xr vlan 4
+or
+.Xr svlan 4
+interfaces respectively.
+Valid tag values are from 1 to 4095 inclusive.
+.It Cm Fl vnetid
+Clear the tag value.
+Packets on a vlan interface without a tag set will use a value of
+0 in their headers.
+.It Cm parent Ar parent-interface
+Associate the vlan interface with the interface
 .Ar parent-interface .
-Packets transmitted through the vlan interface will be
-diverted to the specified interface
-.Ar parent-interface
-with 802.1Q vlan tagging.
-Packets with 802.1Q tagging received
+Packets transmitted on
+.Xr vlan 4
+or
+.Xr svlan 4
+interfaces will be tagged with 802.1Q or 802.1AD headers respectively
+and transmitted on the specified parent interface.
+Packets with 802.1Q or 802.1AD tags received
 by the parent interface with the correct vlan tag will be diverted to
-the associated vlan pseudo-device.
-The vlan interface is assigned a
-copy of the parent interface's flags and the parent's Ethernet address.
-If
-.Cm vlandev
-and
-.Cm vlan
-are not set at the same time, the vlan tag will be inferred from
-the interface name, for instance
-.Cm vlan5
-will be assigned 802.1Q tag 5.
-.It Cm -vlandev
+the associated vlan interface.
+Unless a custom Ethernet address is assigned to the vlan interface,
+it will inherit a copy of the parent interface's Ethernet address.
+.It Cm Fl parent
 Disassociate from the parent interface.
-This breaks the link between the vlan interface and its parent,
-clears its vlan tag, flags, and link address, and shuts the interface down.
+This breaks the link between the vlan interface and its parent.
 .El
 .Sh EXAMPLES
 Assign the

Reply via email to