这个问题是学习vlan很基础的一个问题,初学者可能不是很理解其中技术理论。因此要弄清楚,大家先说基础。
首先得明白lan是咋回事,说白了lan就是一台交换机或者多台级联交换机的交换机群,当然这些交换机都是纯二层的。
这样连接到这个lan内任何一台交换机任意一个端口的主机,都是在一个lan内,如果它们ip地址网段相同,可以相互通信。
不过这也带来一个问题,就是连接到这个lan内的主机都在一个广播域,啥意思?比如一台主机发了一个广播,其他所有人都能听到。如果大家都发广播,干扰别人,也浪费交换机带宽。
因为可能发起人并不想所有人都听到,只希望连到这个lan内到部分人听到。怎么做?
这个时候就在这个lan上所有交换机启用vlan,即虚拟的lan。这样就可以在一个lan内部实现多个不同的vlan,最多4094个。
大家可以把在相同广播域内的主机放到同一个vlan,这样要广播的话,在自己vlan内广播就好,其他vlan啥事也没有,不影响其他vlan的主机。也就是vlan的二层隔离作用。
但具体的实现呢,可以给每台交换机各发一个vlan号,具有相同vlan号的主机就可以收到彼此的广播了,不同vlan号的就不受别的vlan影响。
不过呢,主机如果数量巨大的话,工作量不是很大?而且如果有的主机,有时候需要换vlan号,维护工作也不少。
因此大多数情况下,大家的vlan号是在交换机端口上配置的,这样分配端口号的工作,就到交换机上了,而且交换机群都是网工建设和维护,他们可以统一划分和维护。
连接到具有相同vlan号端口的主机就在一个广播域了,连接到不同vlan号端口的主机就二层隔离了。
完美!!!在不用改变原来同一lan内交换机群物理连接情况下,用vlan解决了lan的广播问题,把广播范围局限在交换机的具有相同vlan号的端口上,而不是所有端口。
有了上面基础,再说问题答案,同一交换机不同端口,一个在vlan10,一个在vlan20(请允许大家这么理解,因为题主没说清楚是同一交换机同一端口,还是同一交换机不同端口)。
很明显这两个端口vlan号不同,因此连接到这两个端口的主机,都不能收到各自的广播,也就是它们各自发出来的广播数据,不能被彼此收到。
这也导致即使它们的ip地址在同一个网段(即子网),也不可能ping通。具体细节,涉及到arp,路由,不写了。知道这个结果就好。
再说一下,同一交换机同一端口情形,你在vlan10,偶在vlan20,怎么理解?都同一个端口了,哪来的你偶?
估计这个你偶不是指交换机端口吧。或者是哪个老师随口提了一下,导致题主疑惑。
但是同一个端口,可以既在vlan10,也在vlan20的,也就是说这个端口既可以处理vlan10的数据,也可以处理vlan20的数据,说是处理,其实就是转发。
这样的的端口,有个名字叫trunk口,用在交换机和交换机直连情况。而上文中提到连接主机的端口,只有一个vlan号,大家称之为access口。
总结下,access口用于交换机连接主机,只有一个vlan号;trunk口用于交换机连接交换机,一般有多个vlan号。
当然了trunk口,你就只给它一个vlan号,也没问题,多个更是没话说。但access口,你就只能给它一个vlan号,多了可不行。
还有就是trunk口连主机,access口连交换机,也是可以的,不过那是特殊场景。初学者掌握通用场景即可。
手机码字,半个小时,累死……