您现在的位置是:首页 >技术杂谈 >【网络】IP地址和静态路由网站首页技术杂谈

【网络】IP地址和静态路由

大虾好吃吗 2024-06-17 18:01:02
简介【网络】IP地址和静态路由

目录

?IP地址的格式

子网掩码

?路由器基本原理与配置

配置IP地址通信

?ARP协议和ICMP协议

?广播和广播域的概念

?ARP协议

?ICMP协议

?静态路由和默认路由

?路由原理

?路由器的工作原理

?静态路由

?默认路由

?配置命令

?配置实例


    ?博客主页:大虾好吃吗的博客

    ?专栏地址:网络专栏

IP地址的格式

        IP地址由32位二进制数组成,主要分为两个部分:网络部分和主机部分。目前internet上使用最多的IP地址是A/B/C三类;

        A类地址:1~126,0网段保留,127网段本地测试,组成格式为网络部分+主机部分+主机部分+主机部分。

        B类地址:128~191,组成格式为网络部分+网络部分+主机部分+主机部分。

        C类地址:192~223,组成格式为网络部分+网络部分+网络部分+主机部分。

        而从ACB这三类地址中有划分出一部分供企业内部使用,这部分ip称之为私有地址,我们个人常用的就是192.168.0.0网段。

10.0.0.0~10.255.255.255

172.16.0.0~172.31.255.255

192.168.0.0~192.168.255.255

子网掩码

        子网掩码与IP地址密切相关,在网络中主机之间通信分为两种情况:同一个网段中两台主机之间相互通信;不同网段中两台主机之间相互通信。

A类默认掩码:255.0.0.0

B类默认掩码:255.255.0.0

C类默认掩码:255.255.255.0

路由器基本原理与配置

        实验环境中,如果一段时间没有对路由器配置,就会回到初始界面,需要重新输入密码才能继续配置。下面就解决这个问题。line con 0表示针对console配置(exec-timeout 0 0,第一个0表示分钟,第二个0表示秒钟,都设为零表示永不超时)

Router>en
Router#conf t
Router(config)#line con 0
Router(config-line)#exec-timeout 0 0

        有时控制台会显示一些信息,甚至会打断我们输入的命令,就很烦对吧。下面就是解决方法。

Router(config-line)#logging synchronous

        如果在普通模式或特权模式输入了错误的命令,它就会一位输入的是一个域名,它就会通过广播的方式执行DNS查询,直到查询失败才会停止,过程较长 。为了避免这种情况,可以禁止DNS查找。

Router(config)#no ip domain-lookup 

配置前不必要每次都敲一次,可以复制下面的文档。

en
conf  t
no ip domain-lookup
line con 0
logg syn
exec-timeout 0 0
exit

配置IP地址通信

        下面就来一个实例来看看,交换机和路由器之间如何配置IP地址。打开一台路由器和一台交换机连接,路由器的物理接口默认是关闭的,所以下面的连接节点是红色的。

 

先来看看路由器怎么配置ip,当开启路由器的物理接口,查看模拟器中的连接节点是什么颜色。

Router#conf t
Router(config)#int f0/0
Router(config-if)#ip add 192.168.1.1 255.255.255.0
Router(config-if)#no sh

no sh:全部命令是no shutdown,表示开启路由器的接口。

        再来看看交换机怎么配置ip,交换机的ip不像路由器的接口是配置在物理接口上的,而是配置在虚拟接口,vlan1是每台设备都有的默认虚拟接口。工作环境中出于安全考虑,不是应vlan1接口,可以创建多个vlan,如vlan2、vlan3...等。

Switch#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Switch(config)#int vlan1
Switch(config-if)#ip add 192.168.1.2 255.255.255.0
Switch(config-if)#no sh

        这样两台设备的ip就配置成功了,那它们之间是否能够访问呢?来吧,测试一下就知道了。下面我直接使用交换机测试了,可以看到下面的符号"".!!!!",表示通信成功。"."表示不通,"!"表示通。至于为什么有一个"."这个就问题就得讲到路由协议了,这个后面再讲。

Switch(config-if)#end
Switch#ping 192.168.1.1
​
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.1, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 0/0/0 ms

ARP协议和ICMP协议

ARP协议的作用:可以查出擅自更改IP地址主机的MAC地址。

单播:一对一发送

广播:一对多发送

广播和广播域的概念

广播:将广播地址作为目的地址的数据帧。

广播域:网络中能接收到同一个广播的所有节点的集合。

1.1. MAC地址广播

        MAC地址广播地址为FF-FF-FF-FF-FF-FF,交换机转发MAC广播,路由器会阻挡MAC地址广播。

1.2. IP地址广播

        IP网段的最后一个地址为广播地址,在数据帧中,目的MAC地址是FF-FF-FF-FF-FF-FF,目的IP地址是IP网段的广播地址。

ARP协议

        ARP(Address Resolution Protocol,地址解析协议)的基本功能是负责将一个已知的IP地址解析成MAC地址,以便在交换机上通过MAC地址通信。

2.1. ARP命令

1)查看ARP缓存表

Router#show arp
Protocol  Address          Age (min)  Hardware Addr   Type   Interface
Internet  192.168.1.1             -   00D0.58A3.2601  ARPA   FastEthernet0/0
Internet  192.168.1.2             21  000A.4104.528A  ARPA   FastEthernet0/0

2)清除ARP表

clear arp-cache

ICMP协议

        ICMP(Internet Control Message Protocol,internet控制消息协议),主要是用于IP网络中发送控制消息,提供可能发生在通信环境中的各种问题的反馈。ICMP协议的使用是靠各种命令来实现的,ping命令就是icmp协议。

3.1. ping命令参数

格式如下:

ping [-t] [-a] [-l] 目标主机IP或DNS

-t:默认情况是发送4个ping包,如果加入-t参数,就会不停的ping下去。

-a:返回对方主机的主机名。

-l:ping包默认大小是32字节,可以修改ping包字节数。

静态路由和默认路由

路由原理

        在只有一个网段的网络中,数据包可以很容易地从源主机到达目标主机。但是如果一台计算机要和非本网段的计算机进行通信,数据包可能就要经过很多路由器了。如果A主机访问B主机有很多条线路可以选择,但是某一时刻总会有最佳线路,这时就需要路由选择最佳线路,以便提高网络访问速度。

路由器的工作原理

        在路由器中,有一份“地图”,而这个地图在路由器中称为路由表。在这个路由表中,包含路由器掌握的所有目的网络地址,以及通过此路由器到达这些网络的最佳路径,这个最佳路径指的是路由器的某个接口或吓一跳路由器的地址。有了路由表的存在,路由器才可以高效地进行数据包的转发。

静态路由

        静态路由是由管理员在路由器中手动配置的固定路由,除非管理员干预,否则静态路由不会发生变化。静态路由是单向的,也就是说,希望双方通信,需要配置双向的静态路由。而静态路由的不足之处就是缺乏灵活性。

默认路由

        默认路由是一种特殊的静态路由,默认路由一般配置在末梢网络(边界路由器),如果没有默认路由,目的地址在路由表中没有匹配到时,数据包将被丢弃。适当的使用默认路由可以减小路由表的大小。

配置命令

1.静态路由命令格式

Router(config)#ip route network mask { address | interface }

参数如下:

注:下一跳表示当前路由器的对端ip或接口

network:目的网络地址,指定你最终的目的地址是哪。

mask:子网掩码。

address:下一跳路由器的接口地址。

interface:下一跳的网络本地接口。

2.默认路由命令格式

默认路由和静态路由格式相同,但是在网络部分不同。

Router(config)#ip route 0.0.0.0 0.0.0.0 address

参数如下:

0.0.0.0 0.0.0.0 :表示任何网络,也就是说任何数据包都转发出去。

address:下一跳路由器的接口地址。

配置实例

        多说无益,万恶的理论知识不如实操来的真实,你只需要记住上面的两个命令格式就行了。下面看拓扑图,两台PC机分别是1网段和2网段,上面四台路由器正好可以实现静态和默认两种模式。

        上面说的末梢网络,指的就是最左和最又两台路由器,现在想一下该怎么配置呢?

1、先给两台pc机按照要求配置上ip。

        单击pc机,Desktop→IP Configuration→默认是static(静态)即可,输入ip和mask,后面我给的网络是1.0.0.1,一会配置时就用这个网关了。pc2操作方法一样。

2、从左边开始,配置第一台路由器,先配置ip。网段IP我们实行左一右二的原则,这边0/0接口设置为10.0.0.1

Router>en
Router#conf t
Router(config)#int f0/1
Router(config-if)#ip add 1.0.0.1 255.0.0.0
Router(config-if)#no sh
Router(config-if)#int f0/0
Router(config-if)#ip add 10.0.0.1 255.0.0.0
Router(config-if)#no sh

2.1、ip已经通了,现在配置默认路由。默认路由的下一跳是对端ip,也就是10.0.0.2(这里对端ip还没配置,但是不影响)。

Router(config-if)#exit
Router(config)#ip route 0.0.0.0 0.0.0.0 10.0.0.2

3、配置第二台路由,依旧是先配置ip,让接口先打开。

Router>en
Router#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#int f0/0
Router(config-if)#ip add 10.0.0.2 255.0.0.0
Router(config-if)#no sh
Router(config-if)#int f0/1
Router(config-if)#ip add 20.0.0.1 255.0.0.0 
Router(config-if)#no sh

3.1、第二台路由器就不能配置默认路由了,这时候需要配置静态路由。还记得吗,上面说到静态路由是单向的,如果让两台pc机通信,就需要配置双向路由。如果不理解,看看下面的命令,简单来说,给路由器一份地图,如果我去1.0.0.0 网段,就走10.0.0.1方向,如果去2.0.0.0 网段,我就走20.0.0.2方向。

Router(config-if)#exit
Router(config)#ip route 1.0.0.0 255.0.0.0 10.0.0.1
Router(config)#ip route 2.0.0.0 255.0.0.0 20.0.0.2

4、配置第三台路由器。

Router>en
Router#conf t
Router(config)#int f0/0
Router(config-if)#ip add 20.0.0.2 255.0.0.0
Router(config-if)#no sh
Router(config-if)#int f0/1
Router(config-if)#ip add 30.0.0.1 255.0.0.0
Router(config-if)#no sh

4.1、这里也是配置静态路由

Router(config-if)#exit
Router(config)#ip route 1.0.0.0 255.0.0.0 20.0.0.1
Router(config)#ip route 2.0.0.0 255.0.0.0 30.0.0.2

5、配置第四台路由器

Router>en
Router#conf t
Router(config)#int f0/0
Router(config-if)#ip add 30.0.0.2 255.0.0.0
Router(config-if)#no sh
Router(config-if)#int f0/1
Router(config-if)#ip add 2.0.0.1 255.0.0.0
Router(config-if)#no sh

5.1、配置默认路由,因为这里也是边界路由器,所以这里也配置默认即可。

Router(config-if)#exit
Router(config)#ip route 0.0.0.0 0.0.0.0 30.0.0.1

6、最后测试,单击pc→Desktop→Command Prompt,使用ping命令测试对端ip是否正常通信。然后ping后发现不通,想想到底是哪出错了,还是少了什么步骤吗?最后在ping一次,发现可以ping通了,这是为什么?思考一下,原因写在后面,看看和你想的一样吗。

        解释:其实我们上面的配置没有问题,至于为什么丢了四个包,看下拓扑图。路由器默认会丢弃数据包,经过路由器时,发现找的不是它,它会丢弃数据包,而配置了静态路由后,它会告诉你,你要去的目的地址在另一台路由上,让你去另外一个路由器查找。

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。