diff --git a/sbin/ifconfig/ifconfig.8 b/sbin/ifconfig/ifconfig.8 index c1ffb6a82ccc..bbaaa00d419b 100644 --- a/sbin/ifconfig/ifconfig.8 +++ b/sbin/ifconfig/ifconfig.8 @@ -2706,6 +2706,11 @@ and .Dq 802.1ad . The default encapsulation protocol is .Dq 802.1Q . +The +.Dq 802.1ad +protocol is also commonly known as +.Dq QinQ ; +either name can be used. .It Cm vlanpcp Ar priority_code_point Priority code point .Pq Dv PCP diff --git a/sbin/ifconfig/ifvlan.c b/sbin/ifconfig/ifvlan.c index f316b0404459..60f97338ee27 100644 --- a/sbin/ifconfig/ifvlan.c +++ b/sbin/ifconfig/ifvlan.c @@ -68,6 +68,7 @@ static const char rcsid[] = static const char proto_8021Q[] = "802.1q"; static const char proto_8021ad[] = "802.1ad"; +static const char proto_qinq[] = "qinq"; static struct vlanreq params = { .vlr_tag = NOTAG, @@ -220,8 +221,8 @@ DECL_CMD_FUNC(setvlanproto, val, d) if (strncasecmp(proto_8021Q, val, strlen(proto_8021Q)) == 0) { params.vlr_proto = ETHERTYPE_VLAN; - } else if (strncasecmp(proto_8021ad, val, - strlen(proto_8021ad)) == 0) { + } else if ((strncasecmp(proto_8021ad, val, strlen(proto_8021ad)) == 0) + || (strncasecmp(proto_qinq, val, strlen(proto_qinq)) == 0)) { params.vlr_proto = ETHERTYPE_QINQ; } else errx(1, "invalid value for vlanproto");