电脑连接Trunk接口通常无法直接获取IP地址,因为Trunk接口是专门用于传输多个VLAN数据的接口,它不负责为连接到该接口的设备提供IP地址。
Trunk接口是一种用于传输多个VLAN数据的接口,它将不同VLAN的数据封装在帧头中的VLAN标识中,并在传输到目标设备后再解封。Trunk接口的主要作用是在交换机或路由器之间传输多个VLAN的数据,以实现VLAN之间的隔离和通信。
通常情况下,电脑连接到Trunk接口上时,它无法直接获取IP地址,因为Trunk接口不会为连接设备提供IP地址分配服务。相反,电脑需要通过其他接口获取IP地址,比如电脑连接到access接口或者hybird接口。
但是在一些特殊的网络环境中,可能会通过特殊配置使Trunk接口上的某个VLAN成为Native VLAN,该VLAN可以直接为连接设备提供IP地址分配服务。但这种情况下,并非所有VLAN都能提供IP地址,只有Native VLAN才具备此功能。
一般情况下,电脑连接到Trunk接口无法直接获取IP地址,需要通过其他方式来获取IP地址,如果电脑连接到的是Trunk口想获取相对应的vlanIP地址,需要在trunk接口下面配置pvid。
图片为什么trunk接口下,加了一个native vlan 2000,再将电脑连接到trunk口就可以获取到vlan2000的ip地址?
当在Trunk接口上配置了一个Native VLAN,并将电脑连接到该Trunk接口时,电脑可以获取到该Native VLAN(例如VLAN 2000)的IP地址。这是因为Native VLAN被配置为不打标签(untagged),它允许通过Trunk接口传输数据时不需要VLAN标记。
当电脑连接到Trunk接口时,交换机或路由器会将接收到的数据进行解封,根据帧头中的VLAN标识来确定数据属于哪个VLAN。对于Native VLAN(如VLAN 2000),它不需要VLAN标记,因此数据可以直接传输给连接的设备(电脑),并且设备可以通过该VLAN获取到IP地址。
当在Trunk接口上配置了Native VLAN,并将电脑连接到该接口时,电脑可以获取到该Native VLAN的IP地址,因为Native VLAN不需要VLAN标记,允许直接传输数据给连接的设备。其他VLAN上的数据仍然需要进行VLAN标记,并且需要在电脑的网络配置中指定相应的VLAN标识或标签以与其他VLAN通信。
举例说明
现在配置有vlan30配置了DHCP正常配置完成。
当交换机的8号口配置了是access口,vlan30。当交换机接口配置为access端口PVID和VID只有一个是一致的,都是30。
这时8号口的pvid是30。
这时电脑可以正常获取到dhcp vlan30的IP地址,10.1.3.253。
那这时,我们access端口删除,将8号口配置为trunk接口。
可以看到电脑无法正常获取到IP地址。
当8号口是trunk时,我们来查看一下8号口的PVID,发现PVID是默认1。
如果交换机接口是HYBRID或者TRUNK端口因为该端口能识别多个VLAN,而PVID也可以自己修改,这时我们将8号接口,保留trunk配置,但是配置一条pvid vlan 30,配置如下所示:
这时可以看到8号口还是trunk,但是添加了一条port trunk pvid vlan 30
这时再查看8号口,可以看到pvid已经是30了。
但是pvid已经配置完成,vlan 30,但是这时我们去电脑端测试发现,电脑还是拿不到地址。
这时,我们配置了一条port trunk allow-pass vlan all,这个8口trunk允许所有vlan通过。
允许所有vlan通过后,可以发现电脑可以获取到vlan30的IP地址。
那我现在把port trunk pvid vlan 30删除。那现在8号口的pvid默认就是1,如果我不在8号口的trunk下配置PVID,那么接口默认是在PVID 1,那如果这时我不配置任何的PVID,那么如果我启用了vlan1的DHCP,那么这个8口号可以获取到vlan1的DHCP中的IP地址吗?
vlan1(下图红色框)已经正常配置DHCP,那么这样配置,电脑可以获取vlan1的ip地址吗?
这时电脑是可以正常获取到vlan1的IP地址的。
假如现在把8 trunk口,所有vlan都禁止通过。
这时可以看到电脑也还是无法获取vlan1的IP地址。
如果把不配置任何trunk允许哪些vlan通过,只配置了一个port link-type trunk。
那这时,电脑还是可以获取到vlan1的IP地址。这说明如果是trunk接口,就算没有配置allow-pass vlan 1,默认就是放行vlan1数据的。