网络 || icmp协议和三层交换机

ICMP是什么?

ICMP(Internet Control Message Protocol)互联网控制报文协议。它是TCP/IP子族的一个子协议,用于在IP主机,路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。

ICMP是一个“错误侦测与回馈机制”,是通过IP数据包封装的,用来发送错误和控制消息。

ICMP协议的封装

ICMP协议属于网络层协议。

ICMP数据的封装过程

ICMP 协议的头部:类型,数据。ICMP头部封装会消耗8个字节的空间。

ping命令的使用

  • ping通
  • ping不通
  1. 请求超时:要么是对方开启了防火墙,不允许icmp协议包通过;要么是中间路由器丢弃了我们的ping包。
  2. Destination Host Unreachable:一般是ip地址没有人使用。
  3. 网络不可达:没有填写默认网关。
  4. 未知的名称或服务:没有填写dns服务器地址。

windows里使用ping命令

C:\Users\wei>ping 142.251.43.4

正在 Ping 142.251.43.4 具有 32 字节的数据:
请求超时。
请求超时。
请求超时。
请求超时。

Linux里使用ping命令

[root@localhost ~]# ping 192.168.0.111
PING 192.168.0.111 (192.168.0.111) 56(84) bytes of data.
From 192.168.0.131 icmp_seq=3 Destination Host Unreachable
From 192.168.0.131 icmp_seq=6 Destination Host Unreachable
^C
--- 192.168.0.111 ping statistics ---
9 packets transmitted, 0 received, +2 errors, 100% packet loss, time 198ms

[root@localhost ~]# ping 114.114.114.114
connect:网络不可达

[root@localhost network-scripts]# ping www.baidu.com
ping: www.baidu.com:未知的名称或服务
[root@localhost network-scripts]# LANG=en_US.UTF8
[root@localhost network-scripts]# ping www.baidu.com
ping: www.baidu.com: Name or service not known

[root@localhost ~]# vim /etc/resolv.conf
# --->存放dns服务器ip地址的,真正我们进行域名查询的时候,就到这个文件里找dns服务器地址
# Generated by NetworkManager
nameserver 114.114.114.114
nameserver 192.168.100.1
nameserver 8.8.8.8

# nameserver最多可以3个

[root@localhost network-scripts]# ifup ens33
# 当我们激活新的配置的时候,NetworkManager服务会读取ifcfg-ens33里的dns1这个配置写到/etc/resolv.conf
# ifcfg-ens33 里的dsn1决定了resolv.conf文件里的nameserver的值
# 但是真正有效的是resolv.conf文件

ping的过程

1.如果是域名,先进行域名解析到具体的一个ip。

2.将要ping的ip地址和自己的子网掩码进行与运算,得出相应的网段号114.114.114.0。

3.然后到自己的电脑里的路由表里查询是否由到这个网段的路由。

ping命令的基本格式为

ping  [–t] [-l 字节数] [-a] [-i] IP_Address| target_name

-t 参数会一直不停的执行ping。调试故障或需进行持续连通性测试时应用。Ctrl+C可以中断命令。

C:\Users\wei>ping 192.168.1.1 -t

正在 Ping 192.168.1.1 具有 32 字节的数据:
来自 192.168.1.1 的回复: 字节=32 时间=20ms TTL=64
来自 192.168.1.1 的回复: 字节=32 时间=3ms TTL=64
来自 192.168.1.1 的回复: 字节=32 时间=9ms TTL=64
来自 192.168.1.1 的回复: 字节=32 时间=4ms TTL=64
来自 192.168.1.1 的回复: 字节=32 时间=18ms TTL=64
来自 192.168.1.1 的回复: 字节=32 时间=12ms TTL=64
来自 192.168.1.1 的回复: 字节=32 时间=2ms TTL=64
来自 192.168.1.1 的回复: 字节=32 时间=3ms TTL=64
来自 192.168.1.1 的回复: 字节=32 时间=13ms TTL=64
来自 192.168.1.1 的回复: 字节=32 时间=9ms TTL=64
来自 192.168.1.1 的回复: 字节=32 时间=2ms TTL=64

192.168.1.1 的 Ping 统计信息:
    数据包: 已发送 = 11,已接收 = 11,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 2ms,最长 = 20ms,平均 = 8ms
Control-C
^C
C:\Users\wei>

-a 参数可以显示主机名称。

C:\Users\wei>ping -a www.baidu.com

正在 Ping www.a.shifen.com [112.80.248.75] 具有 32 字节的数据:
来自 112.80.248.75 的回复: 字节=32 时间=23ms TTL=53
来自 112.80.248.75 的回复: 字节=32 时间=25ms TTL=53
来自 112.80.248.75 的回复: 字节=32 时间=27ms TTL=53
来自 112.80.248.75 的回复: 字节=32 时间=43ms TTL=53

112.80.248.75 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 23ms,最长 = 43ms,平均 = 29ms

-l 参数可以设定ping包的大小。单位为字节,可用于简单测试通信质量。

C:\Users\wei>ping  192.168.1.120 -l 200

正在 Ping 192.168.1.120 具有 200 字节的数据:
来自 192.168.1.120 的回复: 字节=200 时间<1ms TTL=64
来自 192.168.1.120 的回复: 字节=200 时间<1ms TTL=64
来自 192.168.1.120 的回复: 字节=200 时间=2ms TTL=64
来自 192.168.1.120 的回复: 字节=200 时间<1ms TTL=64

192.168.1.120 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 2ms,平均 = 0ms

ping命令的更多用法。

用法: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
            [-r count] [-s count] [[-j host-list] | [-k host-list]]
            [-w timeout] [-R] [-S srcaddr] [-c compartment] [-p]
            [-4] [-6] target_name

选项:
    -t             Ping 指定的主机,直到停止。
                   若要查看统计信息并继续操作,请键入 Ctrl+Break;
                   若要停止,请键入 Ctrl+C。
    -a             将地址解析为主机名。
    -n count       要发送的回显请求数。
    -l size        发送缓冲区大小。
    -f             在数据包中设置“不分段”标记(仅适用于 IPv4)。
    -i TTL         生存时间。
    -v TOS         服务类型(仅适用于 IPv4。该设置已被弃用,
                   对 IP 标头中的服务类型字段没有任何
                   影响)。
    -r count       记录计数跃点的路由(仅适用于 IPv4)。
    -s count       计数跃点的时间戳(仅适用于 IPv4)。
    -j host-list   与主机列表一起使用的松散源路由(仅适用于 IPv4)。
    -k host-list    与主机列表一起使用的严格源路由(仅适用于 IPv4)。
    -w timeout     等待每次回复的超时时间(毫秒)。
    -R             同样使用路由标头测试反向路由(仅适用于 IPv6)。
                   根据 RFC 5095,已弃用此路由标头。
                   如果使用此标头,某些系统可能丢弃
                   回显请求。
    -S srcaddr     要使用的源地址。
    -c compartment 路由隔离舱标识符。
    -p             Ping Hyper-V 网络虚拟化提供程序地址。
    -4             强制使用 IPv4。
    -6             强制使用 IPv6。

什么是DOS攻击

DOS攻击(拒绝服务攻击)之 死亡之ping:通过发送大量的无用请求数据包给服务器,耗尽服务器资源,从而无法通过正常的访问服务器资源,导致服务器崩溃。

如果多个ip通过发起对一个服务器的攻击,如果无防御措施,不管服务器内存多大,宽带多宽,CPU多快,都无法抵御这种攻击。

三层交换机

1.开启路由功能

Switch(config-if)#exit
Switch(config)#exit
Switch#en
Switch#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Switch(config)#ip routing

2.让交换机的接口成为路由接口

Switch#en
Switch#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Switch(config)#interface f0/1
Switch(config-if)#no switchport

3.给vlan配置ip地址

Switch(config)#interface vlan 1
Switch(config-if)#ip add 192.168.1.254 255.255.255.0
Switch(config-if)#no shutdown
Switch(config)#exit
Switch(config)#interface vlan2
Switch(config-if)#ip add 192.168.2.254 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#interface vlan 3

%LINK-5-CHANGED: Interface Vlan3, changed state to up

%LINEPROTO-5-UPDOWN: Line protocol on Interface Vlan3, changed state to up
Switch(config-if)#ip add 192.168.3.254 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#end

4.查看路由

Switch#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, Vlan1
C    192.168.2.0/24 is directly connected, Vlan2
C    192.168.3.0/24 is directly connected, Vlan3
C    192.168.6.0/24 is directly connected, FastEthernet0/1

5.在三层交换机上添加1条静态路由

Switch(config)#ip route 192.168.5.0 255.255.255.0 192.168.6.2
Switch(config)#end
Switch#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, Vlan1
C    192.168.2.0/24 is directly connected, Vlan2
C    192.168.3.0/24 is directly connected, Vlan3
S    192.168.5.0/24 [1/0] via 192.168.6.2
C    192.168.6.0/24 is directly connected, FastEthernet0/1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

韩未零

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值