思科命令行配置模式

  • 用户模式
- Switch>
- 设备默认的模式: 用户简单测试和交换机版本查询
- 帮助命令: '?'
  • 特权模式(enable默认最高级)
- Switch#
- 通过"enable"进入,分为0~15级,默认进入后为最高级15级
  管理配置关键,进行网络调试和测试
  • 全局配置模式(config terminal,需先进入enable模式)
- Switch(config)#
- 需先进入enable模式,通过"config terminal"命令进入,对设备的整体功能进行配置
  • 接口模式(interface,需先进入config terminal模式)
- Switch(config-if)#
- 具体接口的进入,对设备接口的 功能进行配置
  • VLAN模式
- "config terminal"模式下配置即可
- 通过vlan编号进入,对设备的vlan进行配置	

    - Switch(config)#vlan 10 	# 创建vlan10
    - Switch(config-vlan)# 		# 已经进入vlan10的配置模式 

配置关闭交换机端口,使其不再生效

  • 当交换机的接口被关闭以后,即使和PC之间接线,也是没有效果的
  • 配置命令如下
Switch>enable # enable
Switch#conf t # 进入配置模式
Switch#conf terminal 
Enter configuration commands, one per line.  End with CNTL/Z.
Switch(config)#interface  f0/1 # 进入接口
Switch(config-if)#shutdown # 关闭接口(此时交换机与PC之间就断开连接)

Switch(config-if)#
%LINK-5-CHANGED: Interface FastEthernet0/1, changed state to administratively down

%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to down

Switch(config-if)#no shutdown # 重新开启连接

命令学习

  • 查看设备当前的配置: enable模式下
- show run
  • 保存当前配置命令
- write
  • 另存为命令
- copy 
	- copy startup-config flash # 把文件保存到flash上面
  • 两个命令学习
- hostname 主机名称
- description 端口描述
### 更改交换机名称(和别的交换机区分开来)
>Switch(config)#hostname ?
  WORD  This system's network name
>Switch(config)#hostname sw-demo1
>sw-demo1(config)#
### 给接口(interface)添加描述信息(相当于'注释')
>sw-demo1(config)#interface f0/1 # 进入接口1
>sw-demo1(config-if)#description this is demo1 for sw-demo1 # 添加注释
>exit
sw-demo1# show run # 查看配置信息

"""
Building configuration...

Current configuration : 1122 bytes
!
version 15.0
no service timestamps log datetime msec
no service timestamps debug datetime msec
no service password-encryption
!
hostname sw-demo1
!
!
!
!
!
!
spanning-tree mode pvst
spanning-tree extend system-id
!
interface FastEthernet0/1
 description this is demo1 for sw-demo1 # 刚才注释的信息
!
"""
  • 远程命令的方式
- 带内管理: telnet模式登录管理
- 带外管理: console配置线进入配置管理
  • 密码配置的几种情况
- 全局配置模式下进行
	- 特权模式的密码配置(明文/密文,特权等级密码)
	
- Line模式下进行
	- Console口的密码登录配置(纯密码 || 用户名和密码)
	- telnet登录密码配置(纯密码 || 用户名和密码 || 注意设置IP)
	
- 注意事项: 每一个设备的IP地址用默认的VLAN1来代替
  • 命令学习: 配置交换机用户名和密码
- enable password/secret # 明文密码 || 加密密码
  • 配置明文密码
- Switch(config)#enable password 123456 # 进入全局配置模式
- exit... # 回退到初始状态,再次enable,就提示输入密码了...
  • 注意事项: 打错命令,无法控制时,使用Ctrl+shift+6来停止
  • 查看刚才配置的明文密码
- Switch(config)#do show run

'''
Building configuration...

Current configuration : 1105 bytes
!
version 15.0
no service timestamps log datetime msec
no service timestamps debug datetime msec
no service password-encryption
!
hostname Switch
!
enable password 123456 # 可以看到刚才配置的"明文密码"
!
!
!
!
!
!
spanning-tree mode pvst
spanning-tree extend system-id
!
interface FastEthernet0/1
 --More-- 
'''
  • 配置密文密码
- Switch(config)#enable secret 456789 # 设置密文密码(原明文密码会被替换掉)
- Switch(config)#do show run

'''
Building configuration...

Current configuration : 1152 bytes
!
version 15.0
no service timestamps log datetime msec
no service timestamps debug datetime msec
no service password-encryption
!
hostname Switch
!
enable secret 5 $1$mERr$QSCPLWA3/uEZNi6i7WTQ4/ # 密文密码
enable password 123456
!
!
!
!
!
!
spanning-tree mode pvst
spanning-tree extend system-id
!
'''
  • Console配置
- 电脑的"串口"连接到"交换机"的"console口"
- Switch(config)# # 进入全局配置模式
- Switch(config)#line console 0 # 进入console口
- Switch(config-line)#

Switch(config-line)#password 123456 # 先设置密码
Switch(config-line)#login # 要求插入console线的时候就输入密码
- exit... # 重新进入就要求先输密码

交换机默认IP地址,就是Vlan1的地址

  • Vlan1默认管理所有的接口
Switch>enable 
Switch#show vlan

'''
VLAN Name                             Status    Ports
---- -------------------------------- --------- -------------------------------
1    default                          active    Fa0/1, Fa0/2, Fa0/3, Fa0/4 # 管理所有的接口
                                                Fa0/5, Fa0/6, Fa0/7, Fa0/8
                                                Fa0/9, Fa0/10, Fa0/11, Fa0/12
                                                Fa0/13, Fa0/14, Fa0/15, Fa0/16
                                                Fa0/17, Fa0/18, Fa0/19, Fa0/20
                                                Fa0/21, Fa0/22, Fa0/23, Fa0/24
                                                Gig0/1, Gig0/2
1002 fddi-default                     active    
1003 token-ring-default               active    
1004 fddinet-default                  active    
1005 trnet-default                    active    
'''
  • 进入Vlan1并配置IP地址,配置完成后,此时的IP地址就是交换机的IP地址
Switch#configure terminal 
Switch(config)#interface vlan 1
Switch(config-if)#ip address 192.168.1.254 255.255.255.0
Switch(config-if)#

- 配置PC的IP地址为: 192.168.1.10 /24,此时ping 1.254不通,原因是 交换机的 vlan1 默认被关闭了,打开即可

	Switch(config)#interface vlan 1
	Switch(config-if)#no shutdown 
	'''
	%LINK-5-CHANGED: Interface Vlan1, changed state to up
	'''

  • 配置远程密码
Switch(config)#line vty 0 10 # 最多同时允许11个人操作交换机
Switch(config-line)#password 123456 # 设置密码
Switch(config-line)#login
Switch(config-line)#exit
  • PC端远程登录
C:\>telnet 192.168.1.254
Trying 192.168.1.254 ...Open
User Access Verification
Password: # 输入123456
Switch>
  • 配置交换机用户名和密码
Switch(config)#line 0 # 先进入Line模式
Switch(config-line)#login local # 启用本地账户
Switch(config-line)#exit
Switch(config)#username admin password 456789 # 设置用户名和密码
Switch(config)#exit

Vlan专题

  • 命令学习
- vlan number # 创建 vlan

- 查询vlan

	- show vlan # 特权模式
	- do show vlan # 全局配置模式
     - show run 
  • 默认情况下vlan1的IP地址就是交换机的IP地址
Switch>enable 
Switch#show run

'''
Building configuration...

Current configuration : 1080 bytes
!
......
interface Vlan1 # 默认的vlan1并没有设置IP地址
 no ip address
 shutdown
......
  • 全局配置模式下,创建vlan
Switch(config)#vlan 10
Switch(config-vlan)#vlan 20
  • 先把硬件接口加入vlan
Switch(config)#interface range f0/1-10 # 把接口1~10批量加入vlan10
Switch(config-if-range)#swit
Switch(config-if-range)#switchport acc
Switch(config-if-range)#switchport access vlan 10
Switch(config-if-range)#exit
Switch(config)#do show vlan # 查看现在的vlan配置(接口被分成了三组[vlan1,vlan10,vlan20]

'''
VLAN Name                             Status    Ports
---- -------------------------------- --------- -------------------------------
1    default                          active    Fa0/21, Fa0/22, Fa0/23, Fa0/24
                                                Gig0/1, Gig0/2
10   VLAN0010                         active    Fa0/1, Fa0/2, Fa0/3, Fa0/4
                                                Fa0/5, Fa0/6, Fa0/7, Fa0/8
                                                Fa0/9, Fa0/10
20   VLAN0020                         active    Fa0/11, Fa0/12, Fa0/13, Fa0/14
                                                Fa0/15, Fa0/16, Fa0/17, Fa0/18
                                                Fa0/19, Fa0/20
1002 fddi-default                     active    
1003 token-ring-default               active    
1004 fddinet-default                  active    
1005 trnet-default                    active    

VLAN Type  SAID       MTU   Parent RingNo BridgeNo Stp  BrdgMode Trans1 Trans2
---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------
1    enet  100001     1500  -      -      -        -    -        0      0
10   enet  100010     1500  -      -      -        -    -        0      0
20   enet  100020     1500  -      -      -        -    -        0      0
1002 fddi  101002     1500  -      -      -        -    -        0      0   
'''
  • 进入vlan10并配置IP地址
Switch(config)#interface vlan 10 # 进入vlan10
Switch(config-if)#
%LINK-5-CHANGED: Interface Vlan10, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan10, changed state to up
Switch(config-if)#ip address 192.168.1.254 255.255.255.0 # 设置IP地址和网关
  • 两台终端(比如PC机)接到同一台二层交换机上面,默认是可以通讯的
- 因为均处于默认的'vlan1'下面
  • 此时,如果再接一台二层交换机,该交换机再接一台终端;终端之间也是可以通讯的
- 因为都属于默认的vlan1
  • 创建两个vlan,并测试连接

  • 原因分析
- 首先,不同vlan之间不能通讯,这是对的,因为没有作trunk
- 终端1.1 和 终端 1.30 分别属于两台交换机的 vlan 10下,却无法通讯,原因如下
	- 当1.1的信号发送到 第二台交换机的时候,vlan10的标签被剥离了,变成默认的vlan1
	- 既然是vlan1,当然无法和vla10的终端进行通讯了

  • Trunk(端口汇聚),是一种封装技术
- 实现跨交换机,多个vlan在同一局域网下互通
  • 实验

- 想要实现跨交换机,同vlan下终端实现通讯,把交换机之间互联的接口模式修改为'Trunk'即可(默认是'Access'接口模式)

sw1(config)#interface f0/24
sw1(config-if)#switchport mode trunk 
......
sw2(config)#interface f0/24
sw2(config-if)#switchport mode trunk 

- 再次测试 vlan10 和 vlan20 下,终端之间可以互相通讯了

不同vlan互通实验

  • 参考网址
原文链接:https://blog.csdn.net/mogexiuluo/article/details/118556539

  • 三层交换机配置
- 创建4个vlan并设置网关和掩码: 10/20/30/40

- 批量进入连接'二层交换机'的配置口,设置为'Trunk'并允许所有的vlan通过

- 开启路由功能
Switch>enable 
Switch#configure terminal 
Switch(config)#vlan 10
Switch(config-vlan)#vlan 20
Switch(config-vlan)#vlan 30
Switch(config-vlan)#vlan 40
Switch(config-vlan)#exit
Switch(config)#int vlan 10
Switch(config-if)#ip add 192.168.10.254 255.255.255.0
Switch(config-if)#no shutdown 
Switch(config-if)#int vlan 20
Switch(config-if)#ip add 192.168.20.254 255.255.255.0
Switch(config-if)#no shutdown 
Switch(config-if)#int vlan 30
Switch(config-if)#ip add 192.168.30.254 255.255.255.0
Switch(config-if)#no shutdown 
Switch(config-if)#int vlan 40
Switch(config-if)#ip add 192.168.40.254 255.255.255.0
Switch(config-if)#no shutdown 

Switch(config)#int range g1/0/1-2
Switch(config-if-range)#switchport trunk encapsulation dot1q //trunk协议封装为dot1q
Switch(config-if-range)#switchport mode trunk 
Switch(config-if-range)#switchport trunk allowed vlan all

Switch(config)# ip   routing    //开启路由功能
Switch(config)#do show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       * - candidate default, U - per-user static route, o - ODR
       P - periodic downloaded static route

Gateway of last resort is not set

C    192.168.10.0/24 is directly connected, Vlan10
C    192.168.20.0/24 is directly connected, Vlan20
C    192.168.30.0/24 is directly connected, Vlan30
C    192.168.40.0/24 is directly connected, Vlan40
————————————————
  • 二层交换机配置
### 一号交换机
	- 创建两个vlan: vlan 10 和 vlan 20
	- 进入 g0/1(连接三层的接口) 接口配置为Trunk,并允许所有的vlan通过
	- 进入 f0/1和f0/2,接口配置为Access 并加入 vlan 10 和 vlan20

Switch>enable 
Switch#conf terminal 
Switch(config)#vlan 10
Switch(config-vlan)#vlan 20
Switch(config-vlan)#int g0/1
Switch(config-if)#switchport mode trunk 
### switchport trunk allowed vlan 10,20 # 只允许vlan 10和vlan 20 经过
Switch(config-if)#switchport trunk allowed vlan all

Switch(config-if)#int f0/1
Switch(config-if)#switchport mode access 
Switch(config-if)#switchport access vlan 10
Switch(config-if)#int f0/2
Switch(config-if)#switchport mode access 
Switch(config-if)#switchport access vlan 20

### 二号交换机一样的写法配置 vlan 30 和 vlan 40

Switch>enable 
Switch#conf terminal 
Switch(config)#vlan 30
Switch(config-vlan)#vlan 40
Switch(config-vlan)#int g0/1
Switch(config-if)#switchport mode trunk 
Switch(config-if)#switchport trunk allowed vlan all

Switch(config-if)#int f0/1
Switch(config-if)#switchport mode access 
Switch(config-if)#switchport access vlan 30
Switch(config-if)#int f0/2
Switch(config-if)#switchport mode access 
Switch(config-if)#switchport access vlan 40

  • 终端IP配置
- PC1
	- 192.168.10.1
	- 255.255.255.0
	- 192.168.10.254
	
- PC2
	- 192.168.20.1
	- 255.255.255.0
	- 192.168.20.254
	
- PC3
	- 192.168.30.1
	- 255.255.255.0
	- 192.168.30.254
	
- PC4
	- 192.168.40.1
	- 255.255.255.0
	- 192.168.40.254
  • 最终测试: 终端之间互Ping没有问题

注意事项: 同一个交换机上面,TrunkHybrid || Dynamic 不能并存(简单来说,有你没我)

  • 命令学习: 设置三种端口模式
- switchport mode access
- switchport mode trunk
- switchport mode dynamic
  • 三层交换机g0/1口不能直接设置为trunk
Switch(config-if)#switchport mode trunk 
Command rejected: An interface whose trunk encapsulation is "Auto" can not be configured to "trunk" mode.
Switch(config-if)#
  • 解决办法: 封装一下trunk即可
Switch(config-if-range)#switchport trunk encapsulation dot1q //trunk协议封装为dot1q
Switch(config-if-range)#switchport mode trunk 
Switch(config-if-range)#switchport trunk allowed vlan all

生成树协议

  • 作用: 解决链路闭合造成的网络风暴问题
  • 交换机默认开启这个功能
- 默认交换机的优先级都是 32769
	- 优先级可修改的范围为: 0~61440
	- 数值越小越优先
  • spanning tree protocol 简称STP

  • 实验: 两台交换机故意环路,结果第二路被默认阻塞了

  • 交换机vlan 1mac地址,就是交换机的mac地址
- show mac add
- show interface vlan 1
  • 查看生成树协议的详情命令
Switch#show spanning-tree 

- 根网桥

VLAN0001
  Spanning tree enabled protocol ieee
  Root ID    Priority    32769
             Address     000A.F316.340D
             This bridge is the root # 这台交换机被标识为"根网桥"
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    32769  (priority 32768 sys-id-ext 1)
             Address     000A.F316.340D
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time  20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/3            Desg FWD 19        128.3    P2p
Fa0/1            Desg FWD 19        128.1    P2p

- 另外一台交换机

VLAN0001
  Spanning tree enabled protocol ieee
  Root ID    Priority    32769
             Address     000A.F316.340D
             Cost        19
             Port        1(FastEthernet0/1)
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    32769  (priority 32768 sys-id-ext 1)
             Address     000B.BE66.4A48
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time  20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1            Root FWD 19        128.1    P2p
Fa0/3            Altn BLK 19        128.3    P2p
  • 根网桥配置实例

- 交换机一号的"根网桥"信息如下

Switch#show spanning-tree 
VLAN0001
  Spanning tree enabled protocol ieee
  Root ID    Priority    32769
             Address     000C.8593.812C # 本交换机不是根网桥,这里展示根网桥的mac地址
             Cost        19
             Port        1(FastEthernet0/1)
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    32769  (priority 32768 sys-id-ext 1)
             Address     0060.7007.9C1D
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time  20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1            Root FWD 19        128.1    P2p
Fa0/2            Altn BLK 19        128.2    P2p

- 交换机二号的"根网桥"信息如下

Switch#show spanning-tree 
VLAN0001
  Spanning tree enabled protocol ieee
  Root ID    Priority    32769
             Address     000C.8593.812C # 这个mac地址对应"交换机一号"的"根网桥"信息
             This bridge is the root
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    32769  (priority 32768 sys-id-ext 1)
             Address     000C.8593.812C
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time  20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/2            Desg FWD 19        128.2    P2p
Fa0/1            Desg FWD 19        128.1    P2p
  • 现在,把交换机一号设置成根网桥
- Switch(config)#spanning-tree vlan 1 priority 0
Switch(config)#spanning-tree vlan 1 priority 0 # 设置成"根网桥"(通过设置'优先级'达成目的)
Switch(config)#do show spanning
VLAN0001
  Spanning tree enabled protocol ieee
  Root ID    Priority    1
             Address     0060.7007.9C1D
             This bridge is the root # 已经被设置成"根网桥"
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    1  (priority 0 sys-id-ext 1)
             Address     0060.7007.9C1D
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time  20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1            Desg FWD 19        128.1    P2p
Fa0/2            Desg FWD 19        128.2    P2p

Switch(config)#
  • 重新把二号交换机配置成根网桥
- spanning vlan 1 root primary
Switch(config)#spanning-tree vlan 1 root primary 
Switch(config)#exit
Switch#show spanning-tree 
VLAN0001
  Spanning tree enabled protocol ieee
  Root ID    Priority    1
             Address     000C.8593.812C
             This bridge is the root # 重新变成"根网桥"
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    1  (priority 0 sys-id-ext 1)
             Address     000C.8593.812C
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time  20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/2            Desg LSN 19        128.2    P2p
Fa0/1            Desg FWD 19        128.1    P2p
  • 注意事项
- 作为"根网桥"的交换机(sw1),是不会被阻塞的,阻塞端口一定是在"非根网桥"交换机

sw1#show spanning-tree 
VLAN0001
  Spanning tree enabled protocol ieee
  Root ID    Priority    32769
             Address     0001.C954.2768
             This bridge is the root
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    32769  (priority 32768 sys-id-ext 1)
             Address     0001.C954.2768
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time  20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/2            Desg FWD 19        128.2    P2p # 两个端口均不会被阻塞
Fa0/1            Desg FWD 19        128.1    P2p # 两个端口均属于'指定端口'

- 查看"非根网桥"交换机的'STP协议'
  而"根端口"是存在于"非根网桥"交换机,它是距离"根网桥"最近的端口(用来向"根网桥"转发数据)
  

Switch#show spanning-tree 
VLAN0001
  Spanning tree enabled protocol ieee
  Root ID    Priority    32769
             Address     0001.C954.2768
             Cost        19
             Port        1(FastEthernet0/1)
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec

  Bridge ID  Priority    32769  (priority 32768 sys-id-ext 1)
             Address     0090.2BD8.5A0A
             Hello Time  2 sec  Max Age 20 sec  Forward Delay 15 sec
             Aging Time  20

Interface        Role Sts Cost      Prio.Nbr Type
---------------- ---- --- --------- -------- --------------------------------
Fa0/1            Root FWD 19        128.1    P2p # 根端口
Fa0/2            Altn BLK 19        128.2    P2p # 可以看到,fa0/2口被阻塞了

- 分析两台设备之间的阻塞端口
	- 在"非根网桥"上面除了一个'根端口',另外一个肯定就是'阻塞端口',如何改变这种关系呢?
	- 解决办法: 进入'对端'交换机,设置优先级即可: spanning-tree vlan 1 port-priority 0

  • 配置实践
- 默认阻塞在 sw2的fa0/2 端口,现在提升 sw1的 fa0/2 端口优先级,从而使sw2的fa0/1变成'阻塞端口'

sw1(config)#interface fa0/2
sw1(config-if)#spanning-tree vlan 1 port-priority 0
sw1(config-if)#exit

端口聚合

  • 定义: 将若干个物理端口打包作为一个逻辑端口对外通信
  • 作用有两个
- 冗余备份: 当一条干线挂掉以后,另外一个干线马上顶上,不至于断网
- 负载均衡: 比如监测到一条干线的数据流量很大,另外一条干线的数据流量很小,就可以作'负载均衡'
  • 均衡方式
- Dst-ip : 负载均衡方式根据目的地IP地址
- Dst-mac
- src-dst-ip
- src-dst-mac
- src-ip
- src-mac
  • 端口汇聚的配置步骤和方法
- 明确数据量大的链路
- 明确要打包的物理端口
- 使用'channel-group'打包
- 使用'port-channel'配置负载均衡方式
- 进入刚刚配置的'物理端口'配置成'trunk'(干道)

实验环境: 配置同网段下,打包成逻辑端口实例

  • 思路分析
- 不管二层还是三层交换机,均划分 vlan10,vlan20,vlan30
- 二层接终端的接口设置成access并加入vlan 10,接三层交换机的接口设置成trunk
- 三层交换机接二层的接口设置成 trunk
- 核心部分,就是'配置汇聚端口'
  • 配置汇聚端口
# 批量进入端口
Switch(config)#interface range fa0/22-24

# 可以看出,这种打包方式,最多支持6组
Switch(config-if-range)#channel-group ?
  <1-6>  Channel group number

# 打包成'1号物理端口'
Switch(config-if-range)#channel-group 1 mode on

# 配置负载均衡
Switch(config)#port-channel load-balance src-dst-mac

# 进入打包后的'物理端口',配置trunk
Switch(config)#interface port-channel 1
Switch(config-if)#switchport mode trunk 

  • 负载均衡的几种模式选项
Switch(config)#port-channel load-balance ?
  dst-ip       Dst IP Addr
  dst-mac      Dst Mac Addr
  src-dst-ip   Src XOR Dst IP Addr
  src-dst-mac  Src XOR Dst Mac Addr
  src-ip       Src IP Addr
  src-mac      Src Mac Addr

不同VLAN之间的互通实验

  • 思路分析
- 三层交换机创建vlan并配置IP地址和网关
- 连接终端的端口配置成access并加入对应的vlan
- 连接二层交换机的接口
	- 先开启 dot1q 协议(保证和二层交换机通信协议一致)
	- 再修改成trunk(直接修改成trunk会报错,是不行的)
- 开启'路由功能'
- 二层交换机
	- 创建vlan(不设置IP地址和网关)
    - 连接终端的接口配置成access并加入vlan
    - 连接三层的接口,配置成trunk即可
### 三层
Switch(config)#vlan 10
Switch(config-vlan)#vlan 20

Switch(config)#interface vlan 10 # vlan 20 同样的操作
Switch(config-if)#ip address 192.168.1.254 255.255.255.0

Switch(config)#interface fa0/1 # 终端设置成access并加入vlan
Switch(config-if)#switchport access vlan 10

Switch(config)#ip routing # 开启路由功能

Switch(config)#interface fa0/3 # 开启dot1q协议并设置成trunk
Switch(config-if)#switchport trunk encapsulation dot1q 
Switch(config-if)#switchport mode trunk 

### 二层交换机的配置不再赘述
  • 注意事项
- vlan也可以取'别名'
	- vlan 10
	- name PD
- 作"三层跨vlan互通"的时候,一定要手动开启`路由功能`
  • 实验小结
- 以上实验并没有作vlan互通限制,比如说只允许vlan 10和vlan 20 互通,vlan 30 作为一个独立的网段,不与其他vlan交互

把Access口变成路由端口

  • 好处: 不必再配置vlan,与其它网段的通讯,全部由这个路由端口来承担
- 进入该端口
- no swithport # 变成路由端口
- 为端口配置IP地址和网关(从这个口出去的终端要填写该网段的地址)

  • 思路分析
- 三层交换机右边的配置,即 vlan 之间的互通,和之前一样,无需特别的设置
	- 二层创建vlan 10,vlan 20
		- 把连接终端的接口配置为access并加入相应的vlan
		- 连接三层的接口配置成trunk
		
- 三层交换机的配置
	- 创建vlan 10 和 vlan 20 配置IP地址并设置网关
	- 开启路由功能
	- 进入连接'二层'的口
		- 配置'dot1q'
		- 切换为trunk
	- 路由端口的切换
		- 进入连接终端的接口
		- no switchport,然后配置IP地址和网关(若不先no switchport,默认的access是不支持配置'IP地址'和'网关'的)

路由器

  • 功能: 实现不同网络之间的互联互通
- 路由器每个端口都需要配置IP地址,因为要进行数据的转发
- 注意事项: 每个端口配置的网段需不同,不可以出现相同网段的端口
  • 实验: 实现两个终端网络之间的互联互通

  • 思路分析
- 二层交换机当'傻瓜交换机'使用
- 路由器
	- 进入连接二层的接口,配置网关IP地址和掩码,并开启端口(默认是关闭的)
Router(config)#interface fa0/1
Router(config-if)#ip address 192.168.1.254 255.255.255.0
Router(config-if)#no shutdown 
......
Router(config-if)#ip address 192.168.2.254 255.255.255.0
Router(config-if)#no shutdown 
......
  • 测试结果
- PC之间实现互联互通
- 注意事项: 教程的演示中,这么操作只能Ping通自己网段的网关,终端之间互Ping是不行的,因为还没有写'静态路由'
  - 如果没有加上'WIC-1T'的硬件串口线接口,PC之间是可以互联互通的;加了以后,PC之间就不能互联互通的,需写'静态路由'
  • 同异步串口线
- 作用: 不同路由器之间实现网络互通
- 需要了解的东东:由DCE端(需配置'时钟频率')和DTE端组成
  • 使用同异步串口线连接路由器实现互联互通思路
- 硬件方面: 从 DCE端 连接到 DTE端
- 软件方面:
	- 进入DCE端的路由器
		- 进入DCE端的接口,配置IP地址和掩码,no shutdown,并开启'时钟频率'
	- 进入DTE端的路由器
		- 进入DTE端的接口,配置IP地址和掩码,no shutdown即可
		
### DCE端
Router(config)#interface se0/0/0
Router(config-if)#clock rate 64000
Router(config-if)#no shutdown 
Router(config-if)#ip address 10.1.1.1 255.255.255.0

### DTE端
Router(config)#interface se0/0/0
Router(config-if)#ip address 10.1.1.2 255.255.255.0
Router(config-if)#no shutdown 

### 测试
Router#ping 10.1.1.1
......
Success rate is 100 percent (5/5), round-trip min/avg/max = 3/8/11 ms

静态路由

  • 网管手工配置的路由信息(若拓扑图发生变化,需要手工修改)
  • 使用范围: 较为简单的网络(复杂的网络如果需要天天改~~累死网管~)
  • 设置路由规则命令
- ip route 目标网络地址 目标网络地址子网 目标链路直连的下一跳
- show ip route # 查看路由命令

  • 思路分析
- 左边的路由器
    - 首先进入路由器连接终端的接口,设置ip address 并 no shutdown
    - 进入路由器连接路由器的接口,设置ip address 并 no shutdown
    - 书写静态路由: ip route 192.168.20.0 255.255.255.0 192.168.30.2
- 右边的路由器作相同的事情

- 测试: 互联互通了
- 注意事项: 单单配置左边的静态路由,而不管右边的静态路由,网络是不会通的

缺省路由

  • 作用: 当路由器不知道该如何转发数据包的时候,就转到缺省路由
  • 适用: 比较复杂的网络(比如广域网,N个网络,N台服务器之间交互)
  • 注意事项: 网络地址子网都表示为0.0.0.0

利用静态路由控制链路流量的分配

  • 实验要求
- 配置一个静态路由功能,实现全网通
- 根据"流量"指定路由通路: 具体做法,就是"删除路由"

  • 实现全网通思路分析: 以最上方路由器作为示例,左右两台路由器一样的思路
- 进入三个物理接口,配置对应的IP地址和子网
- 编写"静态路由"
	ip route 192.168.1.0 255.255.255.0 192.168.10.2 # 配置通往1网段的路由,可以走两条网路
    ip route 192.168.1.0 255.255.255.0 192.168.20.2 
    ip route 192.168.2.0 255.255.255.0 192.168.20.2  # 配置通往2网段的路由,可以走两条网路
    ip route 192.168.2.0 255.255.255.0 192.168.10.2 
    ip route 192.168.30.0 255.255.255.0 192.168.10.2 # 配置中间路由的通路(拓扑图看对面线路就对了)
    ip route 192.168.30.0 255.255.255.0 192.168.20.2 
- 其余两台路由器一样的思路配置,然后测试终端之间能否ping通(有的终端ping可能会出现'丢包'的现象,这是路由选择的结果)

- no ip route xxx # 删除路由命令
	- 比如说: 1网段的终端通往2网段的网路,其实走最近的 30 网段就可以了
	  没有必要走 10 网段 再经过 20网段 最后到达2网段
	  所以,可以删除这条相对长的路由
	  
- no ip route 192.168.20.0 255.255.255.0 192.168.10.1 

路由器的调试模式

  • 分两种
- Realtime模式(实时模式): 这个模式只看结果,平常用的就是这个模式

- 单步调试模式(simulation模式): 本质就是ping包(ICMP包)断点调试,一步一步来
	- 操作方法: 模拟器右下角点击"simulation"调试即可(可以看出,平常默认的是"Realtime模式")
  • 路由距离概念.以上图为例,通过show ip route命令,可以看出

    添加静态路由以后,路由管理距离都是相等的(以最左边路由器为例)

# 查看路由信息
Router#show ip route 
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       * - candidate default, U - per-user static route, o - ODR
       P - periodic downloaded static route

Gateway of last resort is not set

C    192.168.1.0/24 is directly connected, FastEthernet0/0 # "C"表示直连
S    192.168.2.0/24 [1/0] via 192.168.10.1 # "S"就是手写的'静态路由'
                    [1/0] via 192.168.30.2 # "[1/0]"表示管理距离都是1,'0'表示经过的节点(不理解)
S    192.168.3.0/24 [1/0] via 192.168.10.1
                    [1/0] via 192.168.30.2
C    192.168.10.0/24 is directly connected, FastEthernet0/1
S    192.168.20.0/24 [1/0] via 192.168.30.2
C    192.168.30.0/24 is directly connected, Ethernet0/0/0

  • 假设现在发现,其中两个路由器之间通讯的流量比较大,我们通过增加管理距离来分担流量鸭梨
- "路由距离"的作用: 讲白了,就是当发现某线路流量很大的时候,可以指定这个参数,让流量从其他地方分流走
  从而减轻当前线路的流量鸭梨
- 语法: ip route 目标网络地址 目标网络地址子网 目标链路直连的下一跳 路由距离  # 在之前'静态路由'的基础上,添加'路由距离'参数即可
C    192.168.1.0/24 is directly connected, FastEthernet0/0
C    192.168.10.0/24 is directly connected, FastEthernet0/1
C    192.168.30.0/24 is directly connected, Ethernet0/0/0

S    192.168.2.0/24 [1/0] via 192.168.10.1
                    [1/0] via 192.168.30.2
S    192.168.3.0/24 [1/0] via 192.168.10.1
                    [1/0] via 192.168.30.2
S    192.168.20.0/24 [1/0] via 192.168.30.2

  • 实验
- 现在假设最左边的路由器和最上面的路由器,10.1/24 网络流量很大,想让数据包从其他链路走,可以这么处理
  	- 在原先静态路由的基础上,增加'路由距离'参数即可

# 增加距离为100
Router(config)#ip route 192.168.3.0 255.255.255.0 192.168.10.1 100
Router(config)#exit
Router#show ip route
......
Gateway of last resort is not set

C    192.168.1.0/24 is directly connected, FastEthernet0/0
S    192.168.2.0/24 [1/0] via 192.168.10.1
                    [1/0] via 192.168.30.2
S    192.168.3.0/24 [1/0] via 192.168.30.2 # 可以看到,原先的静态路由不见了
C    192.168.10.0/24 is directly connected, FastEthernet0/1
S    192.168.20.0/24 [1/0] via 192.168.30.2
C    192.168.30.0/24 is directly connected, Ethernet0/0/0

-  通过调试ping包发现: 数据包去往最上方的终端时候
	- 去的方向,永远不会再走 10.1 段的链路
	- 回的方向,仍有可能走 10.1 段的链路
	
- 通过'show run'命令查看发现: 这条路由其实还是存在的,只不过 后面加了'路由距离'参数而已

Router#show run
......
ip classless
ip route 192.168.3.0 255.255.255.0 192.168.30.2 
ip route 192.168.2.0 255.255.255.0 192.168.30.2 
ip route 192.168.2.0 255.255.255.0 192.168.10.1 # 旧的静态路由
ip route 192.168.20.0 255.255.255.0 192.168.30.2 
ip route 192.168.3.0 255.255.255.0 192.168.10.1 100 # 新的静态路由
......

利用RIP动态路由协议配置全网通

  • 配置RIP协议步骤
- 确实网络是否需要"VLSM"支持,以便确定 RIPv1 还是 RIPv2 版本
- 确定与路由设备(路由器 && 三层交换机)直连的网络
- 在路由设备上面,配置"直连网络"
  • 实验拓扑图如下

  • 配置思路如下

### 二层交换机配置
	- 创建vlan10 和 vlan20,把连接终端的接口加进去
	- 连接三层的接口,配置成Trunk
### 三层交换机配置
	- 开启路由功能
	- 划分vlan10 和 vlan20,并设置ip地址
	- 连接二层交换机的接口,配置成 trunk # 注意先使用 dot1q 协议
	- 连接路由器的接口,直接no switchport 再配置IP地址和网关
	- 连接终端的接口,直接配置ip地址(不划分vlan,直接no switchport 再配置IP地址和网关 )
### 路由器
- 连接终端的接口,直接配置IP地址
- 连接三层交换机的接口,直接配置IP地址
- 配置rip协议并添加直连网络
	
	# 进入rip
	Router(config)#router rip 
	# 配置直连网络
    Router(config-router)#network 192.168.5.0
    Router(config-router)#network 192.168.4.0
    Router(config-router)#exit
 - 注意事项: 这里三层交换机也要做一样的事情,即 配置rip协议并添加直连网络
 	Switch(config)#router rip
    Switch(config-router)#net
    Switch(config-router)#network 192.168.1.0
    Switch(config-router)#network 192.168.2.0
    Switch(config-router)#network 192.168.3.0
    Switch(config-router)#network 192.168.5.0
    Switch(config-router)#exit
    
- 最终测试: 终端之间互ping通了

为什么要使用ripV2版本

- ripV1无法学习邻居路由的网络和掩码问题
- 可以解决路由器之间普通交叉线传输数据包的问题
  • 如何配置ripV2
- 先按照ripV1进行配置
- 宣告V2版本同时关闭"自动汇聚"
- 通俗理解:就是在"ripV1"的基础上,加上两句命令即可

- 三个路由器之间是3个网段
- 三台终端之间又是另外的3个网段
  • 实验思路分析
- 先配置所有设备和节点的IP地址
- 配置RIP_v1版本(以RA为例,RB和RC类同)
	RA(config)#router rip
    RA(config-router)#net
    RA(config-router)#network 10.1.1.0
    RA(config-router)#network 20.1.1.0
    RA(config-router)#network 40.1.1.0
    RA(config-router)#exit
  • 目前的测试结果
- PC0可以ping通自己的网关,可以ping通RA路由器的20.1.1.1 和 40.1.1.1
- PC0无法ping通 20.1.1.2 和 40.1.1.2
- 结论: 使用RIP_v1版本,终端只能ping通直连路由器的接口,无法ping通其他路由器和其他终端
  • 此时如何ping通其他终端呢?升级配置RIP_v2版本即可
- 本质上,加两条命令就可以了(RA,RB,RC均需如此操作)
	RA(config)#router rip
    RA(config-router)#version 2 # 声明v2版本
    RA(config-router)#no auto-summary  # 关闭"自动汇聚"
  • 最终测试结果
- 终端之间实现互联互通!