实验拓扑

实验需求
实验步骤:
1.开启stp #交换机默认运行mstp
SW1
[sw1]stp mode stp #手动修改模式为stp
sw2
[sw2]stp mode stp
sw3
[sw3]stp mode stp
sw4
[sw4]stp mode stp
sw1
[sw1]dis int GigabitEthernet 1/0/4 #查看接口
GigabitEthernet1/0/4
Current state: DOWN
Line protocol state: DOWN
IP packet frame type: Ethernet II, hardware address: 409e-e6a0-0100 #本机的mac地址
Description: GigabitEthernet1/0/4 Interface
Bandwidth: 1000000 kbps
##查看完所有mac(优先级都是默认的),可以看到sw4<sw3<sw2<sw1
##所以 可以得知sw1为根,到时候sw4上会有一个蔽塞端口(AP)
观察STP状态
sw1
[sw1]dis stp
-------[CIST Global Info][Mode STP]-------
Bridge ID : 32768.409e-e6a0-0100
Bridge times : Hello 2s MaxAge 20s FwdDelay 15s MaxHops 20
Root ID/ERPC : 32768.409e-e6a0-0100, 0 #可以看出根为自己
RegRoot ID/IRPC : 32768.409e-e6a0-0100, 0
RootPort ID : 0.0
BPDU-Protection : Disabled
Bridge Config-
Digest-Snooping : Disabled
TC or TCN received : 4
Time since last TC : 0 days 0h:14m:13s
sw4
[sw4]dis stp
-------[CIST Global Info][Mode STP]-------
Bridge ID : 32768.409f-0322-0400
Bridge times : Hello 2s MaxAge 20s FwdDelay 15s MaxHops 20
Root ID/ERPC : 32768.409e-e6a0-0100, 40 #根为sw1
RegRoot ID/IRPC : 32768.409f-0322-0400, 0
RootPort ID : 128.2
BPDU-Protection : Disabled
Bridge Config-
Digest-Snooping : Disabled
TC or TCN received : 20
Time since last TC : 0 days 0h:15m:13s
##再看交换机端口状态
sw1
[sw1]dis stp brief
MST ID Port Role STP State Protection
0 GigabitEthernet1/0/1 DESI FORWARDING NONE #两个端口都为DP,因为他们里根端口最近
0 GigabitEthernet1/0/3 DESI FORWARDING NONE
sw2
[sw2]dis stp brief
MST ID Port Role STP State Protection
0 GigabitEthernet1/0/1 DESI FORWARDING NONE #1/0/1为DP
0 GigabitEthernet1/0/2 ROOT FORWARDING NONE #1/0/2为RP
sw3
[sw3]dis stp brief
MST ID Port Role STP State Protection
0 GigabitEthernet1/0/1 DESI FORWARDING NONE
0 GigabitEthernet1/0/2 ROOT FORWARDING NONE
sw4
[sw4]dis stp brief
MST ID Port Role STP State Protection
0 GigabitEthernet1/0/1 ROOT FORWARDING NONE
0 GigabitEthernet1/0/2 ALTE DISCARDING NONE #1/0/2为闭塞端口
2.使sw4位根网桥
[sw4]stp priority 4096 #设置stp优先级
[sw4]dis stp
-------[CIST Global Info][Mode STP]-------
Bridge ID : 4096.409f-0322-0400
Bridge times : Hello 2s MaxAge 20s FwdDelay 15s MaxHops 20
Root ID/ERPC : 4096.409f-0322-0400, 0 #根网桥马上就是自己了
RegRoot ID/IRPC : 4096.409f-0322-0400, 0
RootPort ID : 0.0
BPDU-Protection : Disabled
Bridge Config-
Digest-Snooping : Disabled
TC or TCN received : 20
Time since last TC : 0 days 0h:21m:10s
3.让闭塞端口在sw2上
#先查看闭塞端口在哪
[sw1]dis stp brief
MST ID Port Role STP State Protection
0 GigabitEthernet1/0/1 ALTE DISCARDING NONE #可以看到AP在sw1上
0 GigabitEthernet1/0/3 ROOT FORWARDING NONE
[sw2-GigabitEthernet1/0/1]stp cost 99999 #进入接口,设置stp接口开销
[sw2-GigabitEthernet1/0/1]quit
[sw2]dis stp brief
MST ID Port Role STP State Protection
0 GigabitEthernet1/0/1 ALTE DISCARDING NONE #AP到sw2上去了
0 GigabitEthernet1/0/2 ROOT FORWARDING NONE
4.把与终端相连的接口都设置为边缘端口
[sw1-GigabitEthernet1/0/2]stp edged-port #进入接口,设置边缘端口
Edge port should only be connected to terminal. It will cause temporary loops if port GigabitEthernet1/0/2 is connected to bridges. Please use it carefully.
[sw1-GigabitEthernet1/0/2]int g1/0/4
[sw1-GigabitEthernet1/0/4]stp edged-port
总结:stp应用于计算机网络中树形拓扑结构]建立,主要作用是防止网桥网络中的冗余链路形成环路工作。
实验拓扑

实验需求
zhoudaye,密码为123456实验步骤
1.配置ip地址
pc1:192.168.1.1
pc2:192.168.1.2
pc3:192.168.1.3
2.开启dot1x.802.1x
sw1
[sw1]dot1x #全局开启认证
[sw1]int g1/0/1
[sw1-GigabitEthernet1/0/1]dot1x #接口里开启认证
[sw1-GigabitEthernet1/0/1]int g1/0/2
[sw1-GigabitEthernet1/0/2]dot1x #每个接口都要开启
[sw1-GigabitEthernet1/0/2]int g1/0/3
[sw1-GigabitEthernet1/0/3]dot1x
3.创建用户
[sw1]local-user zhoudaye class ?
manage Device management user
network Network access user
[sw1]local-user zhoudaye class network #这里用户类型必须设置为network,且service-type也必须设置为lan-access,否则无法使用802.1x认证
New local user added.
[sw1-luser-network-zhoudaye]password simple 123456
[sw1-luser-network-zhoudaye]service-type lan
[sw1-luser-network-zhoudaye]service-type ?
advpn ADVPN service
ike IKE service
ipoe IPOE service
lan-access LAN access service
portal Portal service
ppp PPP service
sslvpn SSL VPN service
[sw1-luser-network-zhoudaye]service-type lan-access
4.创建交换机端口隔离组、
##分析:端口隔离组用于同vlan内部的端口隔离,属于同一个隔离组的接口无法互相访问,不同隔离组的接口才可以互相访问,所以需要把SW1的三个接口都加入到同一个隔离组##
[sw1]port-isolate group 1 #在sw1上创建一个编号1的组
[sw1]int g1/0/1
[sw1-GigabitEthernet1/0/1]port-isolate ?
enable Add a port to the port isolation group
[sw1-GigabitEthernet1/0/1]port-isolate enable group ?
INTEGER<1-8> Port isolation group ID
[sw1-GigabitEthernet1/0/1]port-isolate enable group 1
[sw1-GigabitEthernet1/0/1]int g1/0/2
[sw1-GigabitEthernet1/0/2]port-isolate enable group 1
[sw1-GigabitEthernet1/0/2]int g1/0/3
[sw1-GigabitEthernet1/0/3]port-isolate enable group 1

实验拓扑

实验步骤
1.配置ip
pc3:192.168.1.1
pc4:192.168.1.2
2.创建链路聚合
sw1
[sw1]interface Bridge-Aggregation 1 #创建一个链路聚合组
[sw1-Bridge-Aggregation1]int g1/0/2 #进入接口加入聚合组
[sw1-GigabitEthernet1/0/2]port link-aggregation group 1
[sw1-GigabitEthernet1/0/2]int g1/0/3
[sw1-GigabitEthernet1/0/3]port link-aggregation group 1
[sw1-GigabitEthernet1/0/3]quit
sw2
[sw2]int g1/0/1
[sw2-GigabitEthernet1/0/1]port link-aggregation group 1
[sw2-GigabitEthernet1/0/1]int g1/0/2
[sw2-GigabitEthernet1/0/2]port link-aggregation group 1
[sw2-GigabitEthernet1/0/2]quit
sw1 #查看链路聚合组
[sw1]dis link-aggregation verbose
Loadsharing Type: Shar -- Loadsharing, NonS -- Non-Loadsharing
Port: A -- Auto
Port Status: S -- Selected, U -- Unselected, I -- Individual
Flags: A -- LACP_Activity, B -- LACP_Timeout, C -- Aggregation,
D -- Synchronization, E -- Collecting, F -- Distributing,
G -- Defaulted, H -- Expired
Aggregate Interface: Bridge-Aggregation1
Aggregation Mode: Static
Loadsharing Type: Shar
Port Status Priority Oper-Key
--------------------------------------------------------------------------------
GE1/0/2 S 32768 1
GE1/0/3 S 32768 1
sw2
[sw2]dis link-aggregation verbose
Loadsharing Type: Shar -- Loadsharing, NonS -- Non-Loadsharing
Port: A -- Auto
Port Status: S -- Selected, U -- Unselected, I -- Individual
Flags: A -- LACP_Activity, B -- LACP_Timeout, C -- Aggregation,
D -- Synchronization, E -- Collecting, F -- Distributing,
G -- Defaulted, H -- Expired
Aggregate Interface: Bridge-Aggregation1
Aggregation Mode: Static
Loadsharing Type: Shar
Port Status Priority Oper-Key
--------------------------------------------------------------------------------
GE1/0/1 S 32768 1
GE1/0/2 S 32768 1
3.sw1与sw2直连配置trunk
sw1
[sw1]int Bridge-Aggregation 1 #进入链路聚合组
[sw1-Bridge-Aggregation1]port link-type trunk #设置trunk口
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[sw1-Bridge-Aggregation1]port trunk
[sw1-Bridge-Aggregation1]port trunk permit vlan all #允许vlan通过
Configuring GigabitEthernet1/0/2 done.
Configuring GigabitEthernet1/0/3 done.
[sw1-Bridge-Aggregation1]
##SW2上命令与SW1上完全一致
sw2
[sw2]int Bridge-Aggregation 1
[sw2-Bridge-Aggregation1]port link-type trunk
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
[sw2-Bridge-Aggregation1]port trunk permit vlan all
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
[sw2-Bridge-Aggregation1]
实验效果

当链路断掉时
[sw1]int g1/0/2
[sw1-GigabitEthernet1/0/2]shutdown
还是可以通讯

Configuring GigabitEthernet1/0/2 done.
[sw2-Bridge-Aggregation1]port trunk permit vlan all
Configuring GigabitEthernet1/0/1 done.
Configuring GigabitEthernet1/0/2 done.
[sw2-Bridge-Aggregation1]
---
实验效果
[外链图片转存中...(img-pGyvJU0P-1658582068948)]
当链路断掉时
~~~shell
[sw1]int g1/0/2
[sw1-GigabitEthernet1/0/2]shutdown
还是可以通讯
[外链图片转存中…(img-ZlGvDjHp-1658582068949)]
总结:端口链路聚合可以实现链路负载平衡。避免链路出现拥塞现象。
我正在编写一个小脚本来定位aws存储桶中的特定文件,并创建一个临时验证的url以发送给同事。(理想情况下,这将创建类似于在控制台上右键单击存储桶中的文件并复制链接地址的结果)。我研究过回形针,它似乎不符合这个标准,但我可能只是不知道它的全部功能。我尝试了以下方法:defauthenticated_url(file_name,bucket)AWS::S3::S3Object.url_for(file_name,bucket,:secure=>true,:expires=>20*60)end产生这种类型的结果:...-1.amazonaws.com/file_path/file.zip.A
在Ruby中是否有Gem或安全删除文件的方法?我想避免系统上可能不存在的外部程序。“安全删除”指的是覆盖文件内容。 最佳答案 如果您使用的是*nix,一个很好的方法是使用exec/open3/open4调用shred:`shred-fxuz#{filename}`http://www.gnu.org/s/coreutils/manual/html_node/shred-invocation.html检查这个类似的帖子:Writingafileshredderinpythonorruby?
我正在使用ruby2.1.0我有一个json文件。例如:test.json{"item":[{"apple":1},{"banana":2}]}用YAML.load加载这个文件安全吗?YAML.load(File.read('test.json'))我正在尝试加载一个json或yaml格式的文件。 最佳答案 YAML可以加载JSONYAML.load('{"something":"test","other":4}')=>{"something"=>"test","other"=>4}JSON将无法加载YAML。JSON.load("
默认情况下:回形针gem将所有附件存储在公共(public)目录中。出于安全原因,我不想将附件存储在公共(public)目录中,所以我将它们保存在应用程序根目录的uploads目录中:classPost我没有指定url选项,因为我不希望每个图像附件都有一个url。如果指定了url:那么拥有该url的任何人都可以访问该图像。这是不安全的。在user#show页面中:我想实际显示图像。如果我使用所有回形针默认设置,那么我可以这样做,因为图像将在公共(public)目录中并且图像将具有一个url:Someimage:看来,如果我将图像附件保存在公共(public)目录之外并且不指定url(同
我在一个ruby文件中有一个函数可以像这样写入一个文件File.open("myfile",'a'){|f|f.puts("#{sometext}")}这个函数在不同的线程中被调用,使得像上面这样的文件写入不是线程安全的。有谁知道如何以最简单的方式使这个文件写入线程安全?更多信息:如果重要的话,我正在使用rspec框架。 最佳答案 您可以通过File#flock给锁File.open("myfile",'a'){|f|f.flock(File::LOCK_EX)f.puts("#{sometext}")}
不知何故,我似乎无法获得包含我的聚合的响应...使用curl它按预期工作:HBZUMB01$curl-XPOST"http://localhost:9200/contents/_search"-d'{"size":0,"aggs":{"sport_count":{"value_count":{"field":"dwid"}}}}'我收到回复:{"took":4,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":90,"max_score":0.0,"hits":[]},"a
什么是Linq聚合方法的ruby等价物。它的工作原理是这样的varfactorial=new[]{1,2,3,4,5}.Aggregate((acc,i)=>acc*i);每次将数组序列中的值传递给lambda时,变量acc都会累积。 最佳答案 这在数学以及几乎所有编程语言中通常称为折叠。它是更普遍的变形概念的一个实例。Ruby从Smalltalk中继承了这个特性的名称,它被称为inject:into:(像aCollectioninject:aStartValueinto:aBlock一样使用。)所以,在Ruby中,它称为inj
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,describetheproblem以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion我需要实现具有各种灵活需求的密码安全。这些要求基本上取自Sanspasswordpolicy:Strongpasswordshavethefollowingcharacteristics:Containatleastthreeofthe
安全产品安全网关类防火墙Firewall防火墙防火墙主要用于边界安全防护的权限控制和安全域的划分。防火墙•信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过。防火墙是一个由软件和硬件设备组合而成,在内外网之间、专网与公网之间的界面上构成的保护屏障。下一代防火墙•下一代防火墙,NextGenerationFirewall,简称NGFirewall,是一款可以全面应对应用层威胁的高性能防火墙,提供网络层应用层一体化安全防护。生产厂家•联想网御、CheckPoint、深信服、网康、天融信、华为、H3C等防火墙部署部署于内、外网编辑额,用于权限访问控制和安全域划分。UTM统一威胁管理(Un
我尝试使用Net::HTTP向Twitter发送GET请求(出于隐私原因替换了用户ID):url=URI.parse("http://api.twitter.com/1/friends/ids.json?user_id=12345")resp=Net::HTTP.get_response(url)这会在Net::HTTP中引发异常:NoMethodError:undefinedmethodempty?'for#from/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/net/http.rb:1