当前位置: 技术问答>linux和unix
询问一个关于VLAN添加的问题
来源: 互联网 发布时间:2017-05-08
本文导语: 内核版本:2.6.35.1 键入命令 vconfig add eth2 10 在/proc/net/vlan/目录下新增eth2.10-eth2。 貌似一般的都是显示为eth2.10这样的形式。 请问,这个差异是如何造成的(编译选项or源码)?/proc/net/vlan/eth2.10-eth2这个文件是在...
内核版本:2.6.35.1
键入命令 vconfig add eth2 10
在/proc/net/vlan/目录下新增eth2.10-eth2。
貌似一般的都是显示为eth2.10这样的形式。
请问,这个差异是如何造成的(编译选项or源码)?/proc/net/vlan/eth2.10-eth2这个文件是在内核源码的那部分产生的?我希望能显示为eth2.10这样的形式。
先谢谢大家了。
键入命令 vconfig add eth2 10
在/proc/net/vlan/目录下新增eth2.10-eth2。
貌似一般的都是显示为eth2.10这样的形式。
请问,这个差异是如何造成的(编译选项or源码)?/proc/net/vlan/eth2.10-eth2这个文件是在内核源码的那部分产生的?我希望能显示为eth2.10这样的形式。
先谢谢大家了。
|
源码中没看到eth2.10-eth2的显示方式,在register_vlan_device的代码中,通过以下代码生成Vlan接口名
/* Gotta set up the fields for the device. */
switch (vn->name_type) {
case VLAN_NAME_TYPE_RAW_PLUS_VID:
/* name will look like: eth1.0005 */
snprintf(name, IFNAMSIZ, "%s.%.4i", real_dev->name, vlan_id);
break;
case VLAN_NAME_TYPE_PLUS_VID_NO_PAD:
/* Put our vlan.VID in the name.
* Name will look like: vlan5
*/
snprintf(name, IFNAMSIZ, "vlan%i", vlan_id);
break;
case VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD:
/* Put our vlan.VID in the name.
* Name will look like: eth0.5
*/
snprintf(name, IFNAMSIZ, "%s.%i", real_dev->name, vlan_id);
break;
case VLAN_NAME_TYPE_PLUS_VID:
/* Put our vlan.VID in the name.
* Name will look like: vlan0005
*/
default:
snprintf(name, IFNAMSIZ, "vlan%.4i", vlan_id);
}
/* Gotta set up the fields for the device. */
switch (vn->name_type) {
case VLAN_NAME_TYPE_RAW_PLUS_VID:
/* name will look like: eth1.0005 */
snprintf(name, IFNAMSIZ, "%s.%.4i", real_dev->name, vlan_id);
break;
case VLAN_NAME_TYPE_PLUS_VID_NO_PAD:
/* Put our vlan.VID in the name.
* Name will look like: vlan5
*/
snprintf(name, IFNAMSIZ, "vlan%i", vlan_id);
break;
case VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD:
/* Put our vlan.VID in the name.
* Name will look like: eth0.5
*/
snprintf(name, IFNAMSIZ, "%s.%i", real_dev->name, vlan_id);
break;
case VLAN_NAME_TYPE_PLUS_VID:
/* Put our vlan.VID in the name.
* Name will look like: vlan0005
*/
default:
snprintf(name, IFNAMSIZ, "vlan%.4i", vlan_id);
}