要求:

  1. PC1与PC2不能通信
  2. PC1可以和PC3通信
  3. PC2可以和PC3通信

1. VLAN配置

根据拓扑图的连接,PC1、PC2、PC3属于不同的VLAN。我们需要确保交换机上的端口已经正确划分到不同的VLAN。假设交换机接口的VLAN配置已经完成(其他博文有):

  • PC1在VLAN10:interface Ethernet 0/0/1
  • PC2在VLAN20:interface Ethernet 0/0/2
  • PC3在VLAN30:interface Ethernet 0/0/3
  • interface Ethernet0/0/1
     switchport access vlan 10
     switchport mode access
    
    interface Ethernet0/0/2
     switchport access vlan 20
     switchport mode access
    
    interface Ethernet0/0/3
     switchport access vlan 30
     switchport mode access

    2. 路由器的接口配置(子接口配置)

    由于三台PC属于不同的网段,必须在路由器上为每个VLAN配置子接口,以实现VLAN间的通信。

  • interface GigabitEthernet0/0.10
     encapsulation dot1Q 10
     ip address 192.168.10.254 255.255.255.0
    
    interface GigabitEthernet0/0.20
     encapsulation dot1Q 20
     ip address 192.168.20.254 255.255.255.0
    
    interface GigabitEthernet0/0.30
     encapsulation dot1Q 30
     ip address 192.168.30.254 255.255.255.0

    3. 配置访问控制列表(ACL)

    为了实现PC1不能和PC2通信,但可以和PC3通信,以及PC2和PC3可以通信的要求,我们可以配置ACL。

    阻止PC1和PC2的通信:

    创建ACL来阻止PC1(192.168.10.1)与PC2(192.168.20.1)的通信。

    access-list 100 deny ip 192.168.10.1 0.0.0.0 192.168.20.1 0.0.0.0
    access-list 100 permit ip any any

    将这个ACL应用在路由器的VLAN10子接口上:

    interface GigabitEthernet0/0.10
     ip access-group 100 in

    PC1可以和PC3通信:

    ACL默认会允许PC1和PC3通信,因为我们只阻止了PC1和PC2的通信,其他通信默认允许。

    PC2可以和PC3通信:

    同样的,PC2与PC3之间的通信不需要特别处理,只要不在ACL中阻止就可以了。因此,PC2和PC3之间的通信会被允许。

    总结:

  • VLAN配置:PC1、PC2、PC3被分别划分到VLAN10、VLAN20和VLAN30。
  • 路由配置:配置路由器子接口,使各个VLAN能够进行路由。
  • ACL配置:使用访问控制列表(ACL)阻止PC1与PC2的通信,而允许PC1与PC3、PC2与PC3的通信。

思考:如果三台PC属于同一个网段?

如果三台PC处于同一个网段(比如子网掩码为255.255.255.0,它们的网段范围是192.168.x.0/24,而IP地址分别是192.168.10.1192.168.20.1192.168.30.1),并且你打算使用VLAN来区分不同PC的网络隔离,那么路由器的配置主要围绕路由器上的子接口配置进行。

由于每个PC位于不同的VLAN(例如PC1在VLAN10、PC2在VLAN20、PC3在VLAN30),需要在路由器上为每个VLAN配置子接口,确保每个VLAN的流量可以通过路由器来进行互通。这样可以实现跨VLAN的通信控制。

以下是配置路由器子接口的具体命令。这里假设路由器的主接口为GigabitEthernet 0/0

1. 创建子接口并为每个VLAN分配IP地址

每个VLAN的子接口必须和VLAN对应。具体命令如下:

配置 VLAN 10 子接口(PC1所在的 VLAN)
interface GigabitEthernet 0/0.10
 encapsulation dot1Q 10            # 为 VLAN10 配置 802.1Q 封装
 ip address 192.168.10.254 255.255.255.0    # 为 VLAN10 的网关分配 IP 地址
配置 VLAN 20 子接口(PC2所在的 VLAN)
interface GigabitEthernet 0/0.20
 encapsulation dot1Q 20            # 为 VLAN20 配置 802.1Q 封装
 ip address 192.168.20.254 255.255.255.0    # 为 VLAN20 的网关分配 IP 地址
配置 VLAN 30 子接口(PC3所在的 VLAN)
interface GigabitEthernet 0/0.30
 encapsulation dot1Q 30            # 为 VLAN30 配置 802.1Q 封装
 ip address 192.168.30.254 255.255.255.0    # 为 VLAN30 的网关分配 IP 地址

2. 确保主接口没有 IP 地址

在配置子接口的同时,确保路由器的主接口上没有直接配置 IP 地址,因为所有 IP 地址应该配置在子接口上。

interface GigabitEthernet 0/0
 no ip address

3. 配置交换机的Trunk端口

为了确保交换机可以识别多个VLAN并将其传递给路由器,我们需要在交换机上配置Trunk端口。这些端口允许多个VLAN通过交换机和路由器之间的连接。

假设连接到路由器的交换机端口是GigabitEthernet 0/1,配置如下:

interface GigabitEthernet 0/1
 switchport mode trunk
 switchport trunk allowed vlan 10,20,30    # 允许 VLAN 10、20、30 通过

4. 路由器上配置静态路由(如果有必要)

如果你的拓扑中存在其他网络,需要让这些VLAN能够与其他网络通信,你可能还需要配置静态路由或动态路由协议。如果没有其他网络参与,则路由器内部会自动处理这些VLAN之间的路由,不需要额外配置。

5. ACL配置(如果需要通信控制)

为了满足你之前提到的通信要求,可以使用访问控制列表(ACL)来控制不同VLAN之间的通信。

阻止 PC1 与 PC2 之间的通信:
access-list 101 deny ip 192.168.10.0 0.0.0.255 192.168.20.0 0.0.0.255
access-list 101 permit ip any any

应用 ACL 到路由器的接口上:

interface GigabitEthernet 0/0.10
 ip access-group 101 in

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部