配置Trunk

1、实验目的

通过本实验可以掌握:

  1. Native VLAN 的含义和配置。
  2. IEEE802.1q 封装。
  3. Trunk 配置和调试方法。

2、实验拓扑

配置 Trunk 的实验拓扑如下图所示。

3、实验步骤

3.1 在交换机S1、S2上创建 VLAN 并把端口划分到相应的VLAN中

(1)配置交换机S1
S1(config)#vlan 2
S1(config-vlan)#name jishubu
S1(config-vlan)#exit
S1(config)#vlan 3
S1(config-vlan)#name caiwubu
S1(config-vlan)#exit
S1(config)#interface gigabitEthernet 1/0/1
S1(config-if)#switchport mode access 
S1(config-if)#switchport access vlan 2
S1(config-if)#exit
S1(config)#interface gigabitEthernet 1/0/2
S1(config-if)#switchport mode access 
S1(config-if)#switchport access vlan 3
S1(config-if)#exit
(2)配置交换机S2
S2(config)#vlan 2
S2(config-vlan)#name jishubu
S2(config-vlan)#exit
S2(config)#vlan 3
S2(config-vlan)#name caiwubu
S2(config-vlan)#exit
S2(config)#interface gigabitEthernet 1/0/1
S2(config-if)#switchport mode access 
S2(config-if)#switchport access vlan 2
S2(config-if)#exit
S2(config)#interface gigabitEthernet 1/0/2
S2(config-if)#switchport mode access 
S2(config-if)#switchport access vlan 3
S2(config-if)#exit

3.2 配置Trunk

(1)配置交换机S1
S1(config)#interface gigabitEthernet 1/0/24
S1(config-if)#switchport trunk encapsulation dot1q 
//配置Trunk链路的封装类型,有的交换机,例如,Cisco 2960的IOS只支持dot1q封装,因此无须执行该命令。由于ISL 封装是 Cisco私有技术,实际应用中很少使用
S1(config-if)#switchport mode trunk 
//配置端口模式为Trunk。被配置为Trunk 的端口,执行命令show vlan时将看不到该端口
S1(config-if)#switchport trunk native vlan 199
//在Trunk链路上配置Native VLAN,默认 Native VLAN为 VLAN1
S1(config-if)#switchport nonegotiate 
//关闭链路 DTP自动协商功能
S1(config-if)#switchport trunk allowed vlan 1-3
//配置 Trunk链路只允许VLAN1~VLAN3的数据包通过
S1(config-if)#exit

【技术要点】

switchport trunk allowed vlan命令有以下选项。

  1. VLAN ID: VLAN列表,可以采用2,3,4~100这种形式,其含义为Trunk链路上允许列表中指明的VLAN的数据流量通过。
  2. add:在原有的列表中允许新增加的 VLAN数据通过Trunk链路。
  3. all:允许所有的 VLAN数据通过Trunk链路,这是默认配置。
  4. except:除指定 VLAN以外的 VLAN的数据都允许通过Trunk链路。
  5. none:不允许任何VLAN的数据通过Trunk链路。
  6. remove:在原有的列表中禁止指定的 VLAN 数据通过Trunk链路。

需要注意的是,如果 Trunk链路上允许的VLAN列表配置不正确,可能造成网络连通性出现问题。

(2)配置交换机S2

S2(config)#interface gigabitEthernet 1/0/24
S2(config-if)#switchport trunk encapsulation dot1q 
S2(config-if)#switchport mode trunk 
S2(config-if)#switchport trunk native vlan 199
S2(config-if)#switchport nonegotiate 
S2(config-if)#switchport trunk allowed vlan 1-3
S2(config-if)#exit

【技术要点】

  • 配置Trunk时,同一链路的两端封装要相同,不能一端是ISL,另一端是dot1q。
  • 配置Native VLAN为不存在的VLAN,目的是避免VLAN跳跃攻击,提升网络安全。
  • 如果Trunk链路两端的Native VLAN不相同,CDP会检测到Native VLAN不匹配,交换机S2提示如下信息:
%CDP-4-NATIVE_VLAN_MISMATCH: Native VLAN mismatch discovered on GigabitEthernet1/0/24 (1), with S1 GigabitEthernet1/0/24 (199).
  • 从网络安全角度考虑,关闭Trunk的自动协商,直接把端口配置为Trunk模式。

4、实验调试

4.1 查看端口 Trunk 信息

S1#show interfaces trunk 
Port        Mode         Encapsulation  Status        Native vlan
Gig1/0/24   on           802.1q         trunking      199
 
Port        Vlans allowed on trunk
Gig1/0/24   1-3
 
Port        Vlans allowed and active in management domain
Gig1/0/24   1,2,3
 
Port        Vlans in spanning tree forwarding state and not pruned
Gig1/0/24   1,2,3

4.2 查看交换机端口信息

S1#show interfaces gigabitEthernet 1/0/24 switchport 
Name: Gig1/0/24
Switchport: Enabled
Administrative Mode: trunk
Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: dot1q
Negotiation of Trunking: Off
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 199 (Inactive)
Voice VLAN: none
Administrative private-vlan host-association: none
Administrative private-vlan mapping: none
Administrative private-vlan trunk native VLAN: none
Administrative private-vlan trunk encapsulation: dot1q
Administrative private-vlan trunk normal VLANs: none
Administrative private-vlan trunk private VLANs: none
Operational private-vlan: none
Trunking VLANs Enabled: 1-3
Pruning VLANs Enabled: 2-1001
Capture Mode Disabled
Capture VLANs Allowed: ALL
Protected: false
Appliance trust: none

4.3 测试 VLAN 内主机之间的通信状态

(1)PC1 ping PC4 可以通信

(2)PC2 ping PC3 可以通信

(1)和(2)的测试结果说明同一个VLAN中的主机是可以跨越Trunk链路进行通信的。

至此实验结束。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/577958.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【网络安全】HTTP协议 — 基础

专栏文章索引:网络安全 有问题可私聊:QQ:3375119339 目录 学习目标​ 一、万维网的诞生与发展​编辑 1.万维网的诞生与发展 2.HTTP协议诞生与发展 二、网络基础 1.TCP/IP分层传输 1)TCP/IP协议 2)封装与拆封 …

初步认识Vscode

4.26初步认识Vscode (一)快捷键的使用 1. 打开控制端 ctrl ~2. 结束终端 ctrl c3. 多行同时对齐输出 按住shift alt 光标多选4. 多行同时任意位置输出 按住alt 光标单点你想要输入的位置5. 代码太长了,想混行编辑 alt z6. 打开设置控制…

C++ AVL树

文章目录 AVL树的概念AVL树基本框架AVL树的插入AVL树的插入(无旋转)AVL树的插入(旋转操作)单旋双旋旋转代码 上面我们知道二叉搜索树在特殊情况下查找的时间复杂度为O(N), 所以为了解决二叉搜索树不稳定的问题,我们引入…

关于OSPF报文学习

目录 一.OSPF学习补充 (1)OSPF报文头部 (2)ospf建立邻居关系 1.Hello报文——建立邻居关系 2.hello报文头部 (3)OSPF建立邻接关系 1.发送DD报文 2.DD报文头部 (4)关于DR,BD…

深入OceanBase内部机制:分区机制构建高可用、高性能的分布式数据库基石

码到三十五 : 个人主页 在数据库技术的发展历程中,随着数据量的不断增长和业务需求的日益复杂,如何高效地存储、查询和处理数据成为了关键挑战。OceanBase作为一款高性能、高可用的分布式关系数据库,通过其独特的分区机制&#xf…

03 spring-boot+mybatis+jsp 的增删改查的入门级项目

前言 主要是来自于 朋友的需求 项目概况 就是一个 用户信息的增删改查然后 具体到业务这边 使用 mybatis xml 来配置的增删改查 后端这边 springboot mybatis mysql fastjson 的一个基础的增删改查的学习项目, 简单容易上手 前端这边 jsp 的 基础的试题的增删改查 学习项…

Shell脚本学习记录

0.理解Linux文件权限 0.1 Linux安全性 用户的权限是通过创建用户时分配的用户ID(UID)来追踪的,UID是个数值,每个用户都有一个唯一的UID 0.1.1 /etc/passwd文件 Linux系统使用一个专门的文件/etc/passwd来匹配登录名与对应的UID值,该文件包…

本地体验最强开源模型Llama3+Qnw(支持Windows和Mac)

一键运行大模型本地软件(含模型):点击下载 Meta放出Llama3模型了,也应该是这段时间里的一个科技大新闻了。 Llama一直都是开源大语言模型的领头羊驼。 而Llama3又是所有羊驼中最新的领头羊。 可以简单地来看一下官方的对比数据…

Open-Sora:开源版的Sora

项目简介 本项目希望通过开源社区的力量复现Sora,由北大-兔展AIGC联合实验室共同发起,当前我们资源有限仅搭建了基础架构,无法进行完整训练,希望通过开源社区逐步增加模块并筹集资源进行训练,当前版本离目标差距巨大&…

FSMC读取FPGA的FIFO

一、硬件说明 FSMC配置 单片机的代码如下: #define VALUE_ADDRESS_AD1 (__IO uint16_t *)0x60400000while (1){if(!HAL_GPIO_ReadPin(GPIOF, GPIO_PIN_8)) //数据非空{data *(__IO uint16_t *)VALUE_ADDRESS_AD1;data2 *(__IO uint16_t *)VALUE_ADDRESS_AD1…

C语言:插入排序

插入排序 1.解释2.步骤3.举例分析示例结果分析 1.解释 插入排序是一种简单直观的排序算法,它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采…

Qt中的 tableView 设置 二进制 十六进制 序号表头

二 进制序号 因为QTableView的垂直表头并不支持使用委托来自定义。 相反&#xff0c;可以通过将自定义的QWidget作为QHeaderView的标签来实现这一目标。 代码&#xff1a; #include <QApplication> #include <QMainWindow> #include <QVBoxLayout> #include …

使用LSTM模型对心跳时间序列数据预测(Python代码,ipynb环境)

所用模块版本&#xff1a; matplotlib3.7.1 numpy1.24.4 pandas1.5.3 scikit_learn1.2.2 scipy1.10.1 seaborn0.12.2 statsmodels0.14.0 torch1.13.1 torch2.0.1 wfdb4.1.2 主代码&#xff1a; import itertools import pandas as pd import matplotlib.pyplot as plt #完整…

elasticsearch 常用语法汇总

文章目录 前言elasticsearch 常用语法汇总1. 创建索引2. 检索索引信息3. 删除索引4. 文档操作4.1. 对blog_new索引指定文档ID新增4.2. 对blog_new索引不指定文档ID新增&#xff0c;随机文档ID:4.3. 获取文档4.4. 更新文档4.5. 删除文档 5. 查询5.1. 匹配查询5.2. 范围查询5.3. …

计算机视觉的应用29-卷积神经网络(CNN)中的变种:分组卷积、转置卷积、空洞卷积的计算过程

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下计算机视觉的应用29-卷积神经网络(CNN)中的变种&#xff1a;分组卷积、转置卷积、空洞卷积的计算过程。分组卷积将输入通道分为几组&#xff0c;对每组独立进行卷积操作&#xff0c;以减少计算量和模型参数。转置卷…

vue如何发送请求给后端(包括前后端跨域)

目录 有哪些方法可以发送请求要请求先解决跨域问题代理服务器后端解决跨域问题 axios发送请求vue-resource发送请求 有哪些方法可以发送请求 以前可能了解过&#xff1a; xhr 即&#xff1a;new XMLHttpRequest()jQuery 即&#xff1a;$.get $.postaxios fetch 在vue中特有的…

Leetcode 剑指 Offer II 075.数组的相对排序

题目难度: 简单 原题链接 今天继续更新 Leetcode 的剑指 Offer&#xff08;专项突击版&#xff09;系列, 大家在公众号 算法精选 里回复 剑指offer2 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 给定两个数组&#xff0c;arr1 和 arr2&#xff0c; arr2 中的元…

Java NIO

1. IO分类概述 1.1 阻塞与非阻塞 阻塞&#xff08;Blocking&#xff09;和非阻塞&#xff08;Nonblocking&#xff09;是在计算机编程中用于描述I/O操作的两个重要概念。阻塞与非阻塞描述的是线程在访问某个资源时&#xff0c;在该资源没有准备就绪期间的处理方式。 1、阻塞&a…

Android使用AlertDialog实现弹出菜单

最近又开始捣鼓APP&#xff0c;许多api , class都忘记怎么用了&#xff0c;楼下使用AlertDialog实现个弹出菜单&#xff0c;结果直接crash&#xff0c;查了半天&#xff0c;终于即将&#xff0c;记录一下…… 1 实现代码 AlertDialog.Builder mBuilder new AlertDialog.Builde…

后端工程师——C++工程师如何准备面试?

相比 Java 语言方向,C++ 入门简单,精通难,找工作竞争压力更小,但 C++ 依然是近年来招聘的热门岗位之一。本文将从以下三个方面进行详细讲解,帮助你对 C++ 相关岗位的就业前景、岗位要求、学习路线等有更充分的了解。 C++工程师面试准备 上两篇文章对 C++ 工程师的招聘需求…