一、单臂路由

        通常路由功能需要路由器上的多个接口共同来实现,而单臂路由通过1个路由器接口即可实现路由功能;

 

1、同一vlan下的 单臂路由

secondary ip实现在一个物理网络上两个具有不同IP网段计算机的联通;

        拓扑如下:

路由器添加vlan命令 路由器vlanif配置_路由器添加vlan命令

 

这时PC A与PC B是不通的,即使他们在同一个vlan里。因为它们在不同的网段,即netid不同,而不同网络的主机间访问必须通过路由实现;

 

为路由器接口f0/0设置两个ip地址:

roa(config) # int f0/0
roa(config-if) # ip address 10.65.1.2 255.255.0.0
roa(config-if) # ip address 10.66.1.2 255.255.0.0 secondary
roa(config-if) # no shut

测试联通性:

[root#PCA root]# ping 10.66.1.1 (不通)
[root#PCA root]# ping 10.66.1.2 (通)
[root#PCB root]# ping 10.65.1.1 (不通)
[root#PCB root]# ping 10.65.1.2 (通)

为什么PC A 和 PC B还是不通呢?该如何做呢?

[root#PCA root]# route add default gw 10.65.1.2.
[root#PCB root]# route add default gw 10.66.1.2

去掉交换机与路由器的连接线,PC A 和 PC B 不能ping通,由此可以看出,PC A 与 PC B 之间的数据包是经过路由器的,从路由器f0/0入,再从f0/0出,所以称之为单臂路由。

 

        这种情况PC A 和 PC B 在链路层是同一个广播域,对网络带宽不利。如果划分vlan可以隔离广播域。通过子接口可以实现对不同vlan的路由。

 

2、不同vlan下的单臂路由

        将交换机设置为工作在两个vlan,一个是原有的默认vlan 1,另一个是新设置的vlan 2,含f0/6,f0/7。

        将交换机设置成两个vlan时,逻辑上已经成为两个网络,广播被隔离了。两个vlan的网络要通信,必须通过路由器。如果接入路由器的一个物理端口,则必须有两个子接口分别与两个vlan对应,同时还要求与路由器相连的交换机的端口f0/1要设置为trunk,因为这个口要通过两个vlan的数据包。

        在”同一vlan下的单臂路由“一节,我们使用了secondary ip,对于secondary ip的情况,实质上是一个接口,所以不能实现对两个vlan的路由。

1)设置交换机的vlan 2 和 trunk

switch # vlan database
switch(vlan) # vlan 2
switch(vlan) # exit
switch(config) # int f0/6
switch(config-if) # switchport access vlan 2
switch(config) # int f0/1
switch(config) # switchport mode trunk
switch(config-if) # switchport turnk allowed vlan 1, 2
switch(config-if) # switchport trunk encap dot1q

 

2)设置路由器f0/0为两个子接口

roa(config) # int f0/0
roa(config-if) # no shut
roa(config-if) # int f0/0.1
roa(config-subif.1) # encapsulation dot1q 1
roa(config-subif.1) # ip address 10.65.1.2 255.255.0.0
roa(config-if) # int f0/0.2
roa(config-subif.2) # ip address 10.66.1.2 255.255.0.0
roa(config-subif.2) # exit

 

二、静态路由

1、两台路由器时的静态路由

路由器添加vlan命令 路由器vlanif配置_IP_02

 

1)设置计算机和路由器的IP地址

        设置PC A、PC B、PC C的IP地址分别为:10.65.1.1、10.71.1.1和10.70.1.1,并分别添加网关10.65.1.2、10.71.1.2和10.70.1.2。

 

设置Router A的IP地址(子网掩码255.255.0.0):

f0/0: 10.65.1.2 ---> 10.65.1.1 (与PC A相连)

f0/1: 10.66.1.2

s0/0: 10.67.1.2

s0/1: 10.68.1.2 ---> (Router A 的 s0/1 接 Router B 的s0/0)

 

设置Router B的IP地址:

s0/0: 10.68.1.1

s0/1: 10.69.1.2

f0/0: 10.70.1.2

f0/1: 10.71.1.2

 

2)设置路由器的静态路由

        首先,show ip route,这时只能看到直连路由,Router A添加静态路由:

ROA(config) # ip route 10.71.0.0  255.255.0.0  10.68.1.1
ROA(config) # ip route 10.70.0.0  255.255.0.0  10.68.1.1

3)设置路由器的默认路由

        先去掉上面设置的两条静态路由,此时A 与 B 和 C 就不通了。

 

设置Router A的默认路由:

ROA(config) # ip route 0.0.0.0  0.0.0.0  10.68.1.1

这时,A 与 B 和 C就又能够连通了。

 

        使用指定的静态路由时,要查看指定的目的网络,使用默认路由时,不判断目的网络。将匹配不了的数据包都发送给默认的下一跳。路由器设置中一般有一条默认路由。

 

2、三台路由器时的静态路由

路由器添加vlan命令 路由器vlanif配置_静态路由_03

 

设置Router A 的 IP:

f0/0: 10.65.1.2 ---> PC A: 10.65.1.1

f0/1: 10.66.1.2 ---> PC B: 10.66.1.1

s0/0: 10.67.1.2

s0/1: 10.68.1.2 ---> 接 Router C s0/0

 

设置Router C的IP:

s0/0: 10.68.1.1

s0/1: 10.78.1.2 ---> 接Router B s0/0

 

设置Router B的IP:

s0/0: 10.78.1.1

s0/1: 10.67.1.1

f0/0: 10.69.1.2 ---> PC C: 10.69.1.1

f0/1: 10.70.1.2 ---> PC D: 10.70.1.1

 

设置从PC A 到 PC C的静态路由

ROA(config) # ip route 10.69.0.0 255.255.0.0 10.68.1.1 (下一跳)

ROC(config) # ip route 10.69.0.0 255.255.0.0 10.78.1.1

 

如何让PC A 到 PC D通呢? 像10.69.0.0网络一样,在路径的路由器上,再各写一条到10.70.0.0的网络的静态路由,或者使用默认路由较好。

加默认路由:

ROA(config) # ip route 0.0.0.0  0.0.0.0  10.68.1.1

ROC(config) # ip route 0.0.0.0 0.0.0.0  10.69.1.1

 

        路由表是了路由器寻找网络的依据,能否达到一个网络,要看路由表中有没有去这个网络的路由表项;

        默认路由的功能是没有目标网络的路由信息时使用该路由。