Linux网络技能之网络管理相关命令

1.netstat:显示网络连接、运行端口、路由表等 (listener port:监听端口)
ss:配置网络或显示当前网络接口状态
netstat选项:
Linux网络技能之网络管理相关命令_第1张图片

Proto:数据包的协议,分为TCP和UDP
Recv-Q:表示收到的数据已经在本地接收缓存,但是还没有被进程取走的数据包数量
Send-Q:对方没有收到的数据包,(或者没有ACK回复的,还在本地缓冲区的数据包数量
Local Address: 本地IP:端口,通过端口可以知道本机开启了那些服务
Foreign Address: 远程主机:端口也就是远程那个IP使用那个端口连接到本机
State:连接状态,主要是已经建立连接(ESTABLISED) 和监听两种状态(LISTEN)PID/Program
name:主要是进程ID和进程命令
Linux网络技能之网络管理相关命令_第2张图片

Proto:协议,一-般为unix
Refcnt:连接到此socket的进程数量
Flags:连接标识
Type: Socket访 问类型
State:连接状态,已经建立连接(ESTABLISED) 和监听两种状态
(LISTEN)
I-Node:程序文件的Inode号
Path: Socket程序的路径, 或者相关数据的输出路径

三次握手四次挥手:

CLOSED 初始(无连接)状态。
LISTEN 侦听状态,等待远程机器的连接请求。
SYN SEND 在TCP三次握手期间,主动连接端发送了SYN包后,进入SYN SEND状态,等待对方的ACK
SYN RECV 在TCP三次握手期间,主动连接端收到SYN包后,进入SYN RECV状态。
ESTABLISHED 完成TCP三次握手后,主动连接端进入ESTABLISHED状态。此时,TCP连接已经建立,可 以进行通信。
FIN_ WAIT_1 在TCP四次挥手时,主动关闭端发送FIN包后,进入FIN WAIT 1状态。
FIN_ WAIT_ .2 在TCP四次挥手时,主动关闭端收到ACK包后,进入FIN WAIT. 2状态。
TIME_ WAIT 在TCP四次挥手时,主动关闭端发送了ACK包之后,进入TIME_ WAIT状态,等特最多MSL 时间,让被动关闭端收到ACK包。
CLOSING 在TCP四次挥手期间,主动关闭端发送了FIN包后,没有收到对应的ACK包,却收到对方的FIN包,此时,进入CLOSING状态。
CLOSE_ WAIT 在TCP四次挥手期间,被动关闭端收到FIN包后,进入CLOSE WAIT状态。
LAST_ ACK
在TCP四次挥手时心被动关闭端发送FIN包后,进入LAST_ ACK状态,等待对方的ACK包。

主动连接端可能的状态有: CLOSED SYN_ SEN ESTABLISHED
主动关闭端可能的状态有: FIN_ WAIT_ 1 FIN_ WAIT 2
TIME_ WAIT
被动连接端可能的状态有: LISTEN SYN_ RECV ESTABLISHED
被动关闭端可能的状态有:
CLOSE_ WAIT LAST ACK CLOSED
在Linux下,如果连接数比较大,可以使用效率更高的SS来替代netstat.并发量比较大的情况下可以很明显对比出两个效率

ss常用选项:

-t: tcp协议的连接
-u: udp协议的链接、
-l: 监听状态的连接
-a:所有状态的连接
-e:显示扩展信息
-m:显示套接连接使用的内存信息
-p:进程及UDP
-n:数字格式显示
-0 state (established)

-o的理解:
(while parsing filter): “syntax error!”: (解析过滤器时):“语法错误!”

[root@localhost ~]# ss -o state established '( dport = :ssh or sport = :ssh )'   //显示所有已建立的ssh连接

2.traceroute :追踪路由,对网络系统性能分析(traceroute:路由跟踪 host:主机 icmp:控制报文协议)
mtr :追踪路由,对网络系统性能分析,动态

选项:

mtr -r已报告模式显示
mtr -S用来指定pi ng数据包的大小
mtr -n no-dns不对IP地址做域名解析
mtir -a来设置发送数据包的IP地址这个对一个主机由多个IP地址是有用的
mtr -i使用这个参数来设置ICMP返回之间的要求默认是1秒
mtr -4 IPV4
mtr -6 IPV6

[root@localhost ~]# mtr www.baidu.com Linux网络技能之网络管理相关命令_第3张图片

第一列:显示的是IP地址和本机域名,这点和tracert很像
第二列:是显示的每个对应IP的丢包率
第三列:snt:10设置每秒发送数据包的数量,默认值是10可以通过参数-C来指定。 其中-C的说明是: -report-cycles COUNT
第四列:显示的最近–次的返回时延
第五列:是平均值这个应该是发送pi ng包的平均时延
第六列:是最好或者说时延最短的
第七列:是最差或者说时延最常的 第八列:是标准偏差

域名访问流程:(访问域名-dns解析-访问IP)
—> hosts ----> 查本地DNS缓存 ----> localDNS(/etc/resolv.conf servername 223.5.5.5) – localDNS -----> DNS (权威)(www.baidu.com)

小练习:(Documentroot:文档根 servername:服务器名称)
apache的虚拟主机:
yum install httpd
vim /etc/httpd/conf/httpd.conf
virtual host being defined.:正在定义虚拟主机 再此下插入
Linux网络技能之网络管理相关命令_第4张图片
DocumentRoot /var/www/xingyun
ServerName www.xingyun.com


DocumentRoot /var/www/anttech
ServerName www.anttech.com


DocumentRoot /var/www/hahaha
ServerName www.hahaha.com

[root@localhost xingyun]# systemctl restart httpd
[root@localhost www]# mkdir anttech
[root@localhost www]# mkdir hahaha
[root@localhost www]# mkdir xingyun
写文件:
[root@localhost www]# cd anttech/
[root@localhost anttech]# vim index.html
This is a test from 192.168.253.139 of anttech
[root@localhost hahaha]# vim index.html
This is a test from 192.168.253.139 of hahaha
[root@localhost xingyun]# vim index.html
This is a test from 192.168.253.139 of xingyun

访问:
hosts: windows:C:\Windows\System32\drivers\etc
linux: /etc/hosts
192.168.42.61 www.xingyun.com
192.168.42.61 www.anttech.com
192.168.42.61 www.hahaha.com

[root@staticName mtr]Vim /etc/hosts
添加
192.168.253.139 www.xingyun.com
192.168.253.139 www.anttech.com
192.168.253.139 www.hahaha.com

[root@staticName mtr]# curl www.anttech.com
This is a test from 192.168.42.61 of anttech
[root@staticName mtr]# curl www.hahaha.com
This is a test from 192.168.42.61 of hahaha
[root@staticName mtr]# curl www.xingyun.com
This is a test from 192.168.42.61 of xingyun
3.wget:下载软件的命令 (nginx:高性能的http,反向代理web服务器;vsftpd:服务器)
[root@localhost ~]#rm -rf ./* //删掉当前下载的所有
选项:
-r:递归下载
-a:下载的输出信息写到file文件中。
-b:后台下载
-i:下载多个文件
-spider:测试下载链接
–tries:增加重试次数
-o filename:将远程的下载到本地,并给其命名.
–limit-rate=num:配置下载的速度
–level=num: 递归的深度
-c:断点续传,当ctrl+c了wget命令,在使用wget -c 接着下载。
-t num:网络不好时,wget重试的次数,默认20,num为0或inf时,表示重复无限次
[root@localhost ~]# wget -r -nd ftp://192.168.42.130/software/ //远程目录的所有文件放到当前目录
[root@localhost ~]# yum install vsftpd
[root@localhost ~]# systemctl start vsftpd
[root@linux_ser01 ~]# cd /var/ftp/
[root@localhost ~]# wget -r -nH ftp://192.168.42.130/software/
[root@localhost ~]# wget -r -nH --level=3 ftp://192.168.42.130/test/
[root@localhost ~]# wget -r -nH --limit-rate=4 ftp://192.168.42.130/software
[root@localhost ~]# wget -r -nH -o file ftp://192.168.42.130/software
[root@localhost ~]# wget -a file1 ftp:// 192.168.42.130/software/Firefox-ESR-full-latest.exe
[root@localhost ~]# wget -O firefox ftp://192.168.42.130/software/Firefox-ESR-full-latest.exe
[root@localhost ~]# wget -r -q ftp://192.168.42.130/test/ //不输出提示星系
[root@localhost ~]# wget -r -t 3 ftp://192.168.42.132/test/
[root@localhost ~]# wget -r -nH -c ftp://192.168.42.130/software/
[root@localhost ~]# wget -r -nH -b ftp://192.168.42.130/software/
[root@staticName mtr]# wget --spider www.xingyun.com/index.html

http账号密码登录:
[root@staticName conf]# wget --user=anliu --password=“123456” www.anttech.com
4.scp:拷贝文件或目录的工具
选项:
Linux网络技能之网络管理相关命令_第5张图片推送:
[root@staticName ~]# scp test.tar.gz 192.168.42.61:/root/
[root@staticName ~]# scp test.tar.gz [email protected]:/home/user01

拉取:
[root@staticName ~]# scp 192.168.42.61:/root/etc.tar.gz ./
[root@staticName ~]# scp [email protected]:/home/user01/etc.tar.gz ./etc1.tar.gz (属主属组没有变化)

[root@staticName ~]# scp -r test 192.168.42.61:/root
[root@staticName ~]# scp -q -r test 192.168.42.61:/root
[root@staticName ~]# scp -r -l 4 test 192.168.42.61:/root

[root@staticName ~]# scp [email protected]:/home/user01/etc.tar.gz ./ ssh默认保留可执行权限
[root@staticName ~]# scp -p [email protected]:/home/user01/etc.tar.gz ./ 权限一致,时间戳一致

5.curl:文件传输工具

http账户密码登录:
[root@staticName conf]# curl -u anliu www.anttech.com
实例:
(1)curl -o my.html https://www.cnblogs.com/anttech/p/12728295.html //抓取页面内容到一个文件中。
(2)curl -O http://imgsrc.baidu.com/forum/mpic/item/52dfa786a202a83567096e5c.jpg //抓取每个文件
(3)[root@localhost~]# curl -c ./cookie_D.txt -F log=name -F pwd=***** https://account.cnblogs.com/signin?returnUrl=https%3A%2F%2Fi.cnblogs.com%2Fposts%3FcateId%3D1583983 //模拟表单信息,模拟登录,保存cookies信息
(4)[root@localhost ~]# curl -D ./cookie_D.txt -F log=name -F pwd=***** https://account.cnblogs.com/signin?returnUrl=https%3A%2F%2Fi.cnblogs.com%2Fposts%3FcateId%3D1583983 //模拟表单信息,模拟登录,保存头信息
(5)[root@localhost~]# curl -b ./cookie_D.txt https://account.cnblogs.com/signin?returnUrl=https%3A%2F%2Fi.cnblogs.com%2Fposts%3FcateId%3D1583983 //使用cookie信息
(6)curl -C -O http://cdn.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg //断点续传
(7)curl -x 24.10.28.84:32779 -o home.html http://blog.51yip.com //指定代理
(8)分段下载:
[root@localhost~]# curl -r 0-100 -o img.part1 http://blog.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg
[root@localhost~]# curl -r 101-200 -o img.part2 http://blog.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg
[root@localhost~]# curl -r 201- -o img.part3 http://blog.51yip.com/wp-content/uploads/2010/09/compare_varnish.jpg
[root@localhost ~]# cat img.part* >img.jpg
6.nmcli,nmtui(图形化):查看网络设备的相关状态 (重要)(stat:状态)(看6.6号下午最后一小时回放)
nmcli是redhat7或者centos7之后的命令该命令可以完成网卡上所有的配置工作,并且可以写入配置文件,永久生效
Nmtui:centos7的图形化:(在图形化里修改设备名字)
[root@localhost network-scripts]# nmtui
Linux网络技能之网络管理相关命令_第6张图片nmcli:
Linux网络技能之网络管理相关命令_第7张图片

你可能感兴趣的:(linux)