OpenWrt交换机手册(Switch Documentation)

如果你的设备含有不少于1个的LAN接口,那这个设备在不同的接口之间可能有一个被称为交换(switch)的特殊连接。大多数的内部构造如下图所示:

这里写图片描述

如果你想要更改这些端口如何互相连接的,你需要配置你的switch设备。 (see also network.interfaces)

UCI config, swconfig style

假设

设备运行在kernel 2.6 或 3 的版本,设备使用swconfig类型的switch配置
—————————————————
switch位于eth1上。(有许多是在eth0上,判断方法:/proc/switch目录包含了正确的设备号,请确认)[Howto find out:/proc/switch directory appears to contain the right eth number for the switch. please confirm],例如:rtl8366s的芯片.

5个接口的交换设备,其中0-3连接外部,4没有连接,5连接到CPU的eth1接口(which adds up to six ports except that 4 is not counted)
vlan0 仅表示所有的对外接口除了最后的那个。
vlan1 仅表示最后的那个对外接口。[Howto find out which Port corresponds:]
vlan0 是默认vlan,这意味着如果数据包是未加标签的,它将被视为vlan0的数据包。

配置

交换配置

在 /etc/config/network

config 'switch' 'eth1'option 'enable'      '1'option 'enable_vlan' '1'option 'reset'       '1'option 'pvid'        '100'

VLAN: switch config
in /etc/config/network

Notes

VLAN标识号是由option vlan行来指定。一个VLAN的VID(VLAN ID)默认是与相同VLAN标识号关联的。这个标识号可以被option pvid行更改。例如,VLAN1可以使用VID 100。

在option ports行,端口号表明指定的vlan包括这个端口号,如果端口号后跟着”t”那么从这个端口发出的分组是加标签的(tagged),并且这个端口收到的分组可能是附带VLAN标识的。5通常是CPU或者内部端口并且经常被用于标识端口(tagged)。在使用swconfig的设备上其他后缀会被忽略,除了Broadcom kmod-switch
类型接口(/proc/switch/)使用”*”和”u”分别表示PVID和未标识(untagged)端口(因为CPU 端口暗中是被加标签的,需要使用”u”来untag)。

因此,‘0 1 2 3 5t’代表在这个VLAN中当分组(packets)离开端口0,1,2和3发送时是未加标签的,但离开端口5是发送时是加标签的(通常是上面所述的CPU内部端口)。

一个端口收到的标识分组将被指向包含在分组里的VID指明的VLAN。未标识分组将被指向到默认端口VLAN(通常称作PVID)。一个单独的用于设置默认端口VLAN的 switch_port config section是必须的。

相关标准文档802.1q上说VID值0和4095不能被用作标识分组因为它们是预留值 - VID 0 是默认本地vlan - 中间留有4094个有效值,尽管VID 1经常预留为网络管理(举例查看 Dell 2708)。这表明vlan0可在设备内或者设备之间作为一个vlan使用,但是你不能使用vlan0来标识分组。

The config sections

config 'switch_vlan'option 'vlan'       '0'option 'device'     'eth1'option 'ports'      '0 1 2 5t'config 'switch_vlan'option 'vlan'       '1'option 'device'     'eth1'option 'ports'      '3 5t'config 'switch_port'option 'port'      '3'option 'pvid'      '1'

VLAN: interface/network config

VLAN 接口sections看起来就像常规接口sections,除了替代eth1(或者eth0或无论什么),你有eth1.0,eth1.1等等。在一个’.’之后的数字是一个VLAN号。(那是用于内核2.6;2.4内核有所不同)
下面的例子是两个接口的路由器,eth0用作 WAN 口,eth1如上面一样作为5端口交换机来配置。过程见 /etc/config/network

e.g.

config 'interface' 'lan'option 'ifname' 'eth1.0'option 'proto' 'static'option 'ipaddr' '192.168.1.1'option 'netmask' '255.255.255.0'option 'defaultroute' '0'option 'peerdns' '0'option 'nat'    '1'config 'interface' 'extranet'option 'ifname'  'eth1.1'option 'proto'   'dhcp'config 'interface'  'wan'option 'ifname'  'eth0.2'option 'proto'   'pppoe'option 'username' 'szabozsolt-em'option 'password' 'M3IuWBt4'

当然,如果你只有一个5端口交换机eth0(而且没有其他接口),你可能要用匹配恰当的switch,switch_vlan和switch_port sections配置 wan 接口为eth0.1,lan接口eth0.0。

原文链接:交换机手册(Switch Documentation)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Log4j快速使用精简版

Log4j快速使用精简版 1、导入log4j-1.2.17.jar包 2、在src根目录下创建log4j.properties文件 log4j.rootLoggerINFO, CONSOLE, FILE ## console 配置文件输出的目的地 (控制台)log4j.appender.CONSOLEorg.apache.log4j.ConsoleAppenderlog4j.appender.CO…

mac下安装nginx和php

From: http://www.jb51.net/article/42715.htm mac下使用homebrew安装安装、配置nginx、mysql、php-fpm的方法。一、前话:1.1、环境选择:重新在mac上配置php,原本mac上就自带有apach、php以及pgsql,如果图简单的话,直…

【交换机】MAC-VLAN的功能作用是什么,如何设置

MAC VLAN就是基于MAC地址划分的VLAN,MAC VLAN的最大优点就是用户不需要固定在某些端口下,可以随意移动,比如当用户物理位置移动时,即从一台交换机换到其它的交换机时,VLAN不用重新配置,所以,可以…

/deep/使用方式方式;/deep/无效; ::v-deep和>>>使用;

vue-loader官方文档的 /deep/ >>> ::v-deep 使用方法 场景:一般我们使用vue和element-ui,在修改第三方组件库的样式时候,会修改到页面不存在的html的标签样式,此时就需要使用深度作用选择器。 注意: 1.脚手…

ipsec NAT-T与穿透

拓扑: 一 NAT-T R1配置: R2配置: 默认开启NAT-T R3配置: 分析: 端口由UDP500变为UDP4500;隧道封装为:tunnel UDP-encaps。 二 穿透 R1配置: R2配置: R3配置: …

struts2 国际化

概述 Struts2 国际化是建立在 Java 国际化基础上的: - 为不同国家/语言提供对应的消息资源文件 - Struts2 框架会根据请求中包含的 Locale 加载对应的资源文件 - 通过程序代码取得该资源文件中指定 key 对应的消息 配置国际化资源文件 I. Action 范围资源文件: 在…

我的Mac os x中的nginx配置文件nginx.conf

环境: Mac os x 10.10.3 xcode6.3 在mac下用brew install nginx安装好了nginx,增加对php的支持,完整的nginx.conf文件内容如下: #user nobody; worker_processes 1;#error_log logs/error.log; #error_log logs/error.log notice; #error_log lo…

C程序中如何获取shell命令执行结果和返回值

如果在C程序中调用了shell命令,那么往往希望得到输出结果以及命令执行的返回布尔值。在这里分为两步来处理: 1.使用 popen 与 pclose 来执行shell命令; 2.使用‘echo $?’来获取上一条指令执行状态,如果为0那么标识成功执行&am…

去除le-table表格的hover效果

css代码&#xff1a; 如果不生效&#xff0c;就单独的放在一个style标签内&#xff0c;但是单独放会影响全局 <style>/* 首先去除默认的hover效果 *//deep/.el-table--enable-row-hover .el-table__body tr:hover > td {background-color: rgba(0, 0, 0, 0) !importa…

使用 Chrome Timeline 来优化页面性能

使用 Chrome Timeline 来优化页面性能有时候&#xff0c;我们就是会不由自主地写出一些低效的代码&#xff0c;严重影响页面运行的效率。或者我们接手的项目中&#xff0c;前人写出来的代码千奇百怪&#xff0c;比如为了一个 Canvas 特效需要同时绘制 600 个三角形&#xff0c;…

bash shell函数的定义及变量的简单说明

From: http://blog.sina.com.cn/s/blog_4ce3a68a0100i77a.html 函数&#xff1a; “函数是一种脚本内脚本”&#xff0c;程序员很难想像没有函数的日子&#xff0c;至少我会比较痛恨。 所以了解函数的定义也就是学习bash的一大要点了。 函数大大增强了shell的编程能力&…

脚本中判断Shell命令执行结果

与C程序中判断同理&#xff0c;只是语法差异&#xff0c;提一点&#xff0c;在这里尤其需要注意 Shell 的语法规则:-D。 Code&#xff1a; #&#xff01;bin/shifconfig if [ $? -eq 0 ]; thenecho "succeed!" elseecho "failed!" fi

el-table点击某行高亮;el-table设置hover效果;监听el-table点击某行变色;去除el-table的hover效果;监听el-table的hover事件

以下代码可直接复制使用 无需任何修改 注意&#xff1a;如果最后的的css不生效&#xff0c;就单独的放在一个style标签内 重点解释&#xff1a; :row-class-name"tableRowClassName" //这个是设置返回某行的类名 :stripe"false" …

centos 查看版本

From: http://www.cnblogs.com/hitwtx/archive/2012/02/13/2349742.html 有以下命令可以查看&#xff1a; # lsb_release -a LSB Version: :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch Distributor ID: CentOS Description: CentOS release …

SQL Server replication requires the actual server name to make a connection to the server.错误解决...

今天&#xff0c;在作数据发库时&#xff0c;出现如下错误&#xff1a; "SQL Server replication requires the actual server name to make a connection to the server. Connections through a server alias, IP address, or any other alternate name are not supporte…

el-table使用fixed后,最后一行显示不全;el-table设置fixed后,最后一行被遮挡。

解决代码&#xff1a; .el-table {/deep/ .el-table__body-wrapper {overflow-x: scroll !important;//直接设置横轴内容滚动条 即可撑高高度 还不影响使用} }一、情景&#xff1a;给element的el-table设置fixed固定后&#xff0c;最后一行显示部分被遮挡。有的说是有时出现这…

OpenWrt

Contents 1 The Router 1.1 Getting started  1.1.1 Installation  1.1.2 Initial configuration  1.1.3 Failsafe mode 1.2 Configuring OpenWrt  1.2.1 Network  1.2.2 Wireless 1.3 Advanced configuration  1.3.1 Hotplug  1.3.2 Init scripts  1.3.3 …

bash shell函数中返回任意值的四种方法

From: http://www.jbxue.com/article/11322.html 本文介绍下&#xff0c;在bash shell编程中&#xff0c;从函数中返回任意值的几种方法&#xff0c;有需要的朋友参考下。在bash中&#xff0c;函数更像一个子程序&#xff0c;即其返回值&#xff0c;只能是一个数字&#xff0c…

Linux:ps命令以及进程状态详解

Linux 查看进程PS命令详细介绍 1.ps简介 ps命令就是最根本相应情况下也是相当强大地进程查看命令.运用该命令可以确定有哪些进程正在运行和运行地状态、进程是否结束、进程有没有僵死、哪些进程占用了过多地资源等等.总之大部分信息均为可以通过执行该命令得到地. 2. ps命令及其…

修改el-table滚动条样式

.el-table {// 滚动条的宽度/deep/ .el-table__body-wrapper::-webkit-scrollbar {width: 10px; // 横向滚动条height: 10px; // 纵向滚动条 必写}// 滚动条的滑块/deep/ .el-table__body-wrapper::-webkit-scrollbar-thumb {background-color: #1fff;//颜色border-radius: 5px…