【TCP/IP】单播与组播
三种IP地址:
单播地址、广播地址和组播地址
广播和多播仅应用于UDP。
TCP是一个面向连接的协议,TCP一定是点对点的,一点是两个主机来建立连接的,TCP肯定是单播。只有UDP才会使用广播和组播。
有时一个主机要向网上的所有其它主机发送帧,这就是广播,广播分为二层广播(目的MAC全F)和三层广播(IP地址的主机位全1),二层广播是不能跨路由器的,三层广播是可以跨路由器路由的。
多播属于单播和广播之间,帧仅传送给属于多播组的多个主机。
帧的数据过滤过程
广播:
受限的广播 255.255.255.255
指向网络的广播 10.255.255.255 192.168.1.255
指向子网的广播 10.1.1.255 10.1.255.255
指向所有子网的广播 10.255.255.255
ip directed-broadcast
Smurf攻击:当要攻击一台带宽比自己还要高的机器时,可以伪装被攻击主机的IP地址向某个网络中的主机发送icmp 请求广播(10.1.10.255),接收到广播的主机会回应icmp发给被攻击的主机,此时由于大量icmp回应报文,会造成被攻击的主机的网络拥塞。
要使用这个攻击必须要在协助攻击的网络的路由器与主机相连接的接口下开启ip directed-broadcast,否则icmp请求广播不会向属于10.1.10.0网段的主机发送广播。
如何伪装被攻击主机的IP地址,在路由器上起一个Lo接口,IP地址为被攻击着的IP地址,然后 ping 10.1.10.255(协助攻击的主机网段) -s 100.100.100.202(被攻击主机IP)
组播:
组播的IP地址前4位位1110,范围从224.0.0.0到239.255.255.255
组播IP与MAC映射:
由此看出组播IP和MAC地址无法一一映射,因为组播有28位可变,MAC只有23位可变。
既然地址映射是不唯一的,那么设备驱动程序或IP层就必须对数据报进行过滤,因为网卡肯能受到主机不想接收的多播数据帧