Linux网络相关命令[1 ping][2 netstat][3 tranceroute][4 ARP][5 tcpdump]1坪作用:检查当前主机与目标主机的连通性(不是100%准确,部分服务器禁止ping)语法:#ping主机地址(IP
[1 ping][2 netstat][3 tranceroute][4 ARP][5 tcpdump]
1坪
作用:检查当前主机与目标主机的连通性(不是100%准确,部分服务器禁止ping)语法:#ping主机地址(IP地址,主机名,域名等。)
这个命令可以跨平台和在Windows下使用,并且它的语法是一致的。(不同的是Linux下默认总是发送,Windows下默认发送4个包)
2 netstat
角色:表示查看网络的链接信息。
语法:
(1) #netstat -tnlp
-t:TCP 协议-n:将字母转化为数字,即域名转化为 IP-l:列出状态为 “listen”-p:显示进程相关的信息
(2) # netstat -an
-a:表示全部-n:将字母转化为数字,即域名转化为 IP
3 tranceroute
作用:查找当前主机和目标主机之间的所有网关(路由器,会向沿途所有路由器发送互联网控制报文协议,但路由器可能不会给出对应的)。
此命令不是内置命令,需要安装。语法:#traceroute主机地址扩展:Windows下有类似命令:#tracert主机地址
4 ARP
ARP(地址解析协议)是地址解析协议,是根据IP地址获取物理地址(MAC)的协议。
主机发送数据时,首先检查本地MAC地址缓存中是否有目的主机的MAC地址,如果有,则使用缓存中的结果;如果没有,ARP协议会发出一个广播包,要求查询目标主机的IP地址对应的MAC地址,有IP地址的主机会发出响应,响应中包含目标主机的MAC地址,这样发送方就可以得到目标主机的MAC地址。如果目标主机不在本地子网中,ARP解析的MAC地址就是默认网关的MAC地址。
常用语法:(1)# ARP-a[查看本地缓存MAC表] (2) #arp -d主机地址[删除指定的缓存记录]
该命令在Windows下也适用。
5 tcpdump
* *功能:抓包* *
常用语法:(1) #tcpdump -i 网卡设备名 [协议] port 端口(2) #tcpdump -i 网卡设备名 host 地址(3) #tcpdump -i 网卡设备名
示例:查看端口22 (ssh)的数据包:
#tcpdump -i ens33 port 22
xx:xx:xx.xxxxx(如 21:47:27:867495):监听数据的时分秒IP:使用的协议admin.lian.ssh:数据包的一个方向(来自)>:数据流向192.168.184.1:数据包的另一个方向(到达)
推荐抓包工具:查尔斯
Linux远程复制文件Scp是secure copy的缩写,用于Linux下远程复制文件。类似的命令是cp,但是cp只在本地复制,不能跨服务器,scp传输是加密的。当你的服务器硬盘变成只读系统时,scp可以帮你把文件移出来。
命令格式> scp [参数] [原路径] [目标路径]
参数-1 强制scp命令使用协议ssh1-2 强制scp命令使用协议ssh2-4 强制scp命令只使用IPv4寻址-6 强制scp命令只使用IPv6寻址-B 使用批处理模式(传输过程中不询问传输口令或短语)-C 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)-p 留原文件的修改时间,访问时间和访问权限。-q 不显示传输进度条。-r 递归复制整个目录。-v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。-c cipher 以cipher将数据传输进行加密,这个选项将直接传递给ssh。-F ssh_config 指定一个替代的ssh配置文件,此参数直接传递给ssh。-i identity_file 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。-l limit 限定用户所能使用的带宽,以Kbit/s为单位。-o ssh_option 如果习惯于使用ssh_config(5)中的参数传递方式,-P port 注意是大写的P, port是指定数据传输用到的端口号-S program 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。
复印文件//将本地的rumenz.txt拷贝到远程rumenz.com服务器的tmp目录> scp rumenz.txt rumenz@rumenz.com:/tmp//将远程远程rumenz.com服务器目录的rumenz.txt文件拷贝到本地> scp rumenz@rumenz.com:/tmp/rumenz.txt .
复制文件夹//将本地的rumenz目录拷贝到远程rumenz.com服务器的tmp目录> scp -r rumenz rumenz@rumenz.com:/tmp//将远程远程rumenz.com服务器目录的rumenz目录文件拷贝到本地> scp -r rumenz@rumenz.com:/tmp/rumenz .
rsyncRsync是linux系统下的数据镜像备份工具。远程同步是一种快速增量备份工具,可用于远程同步,支持本地复制,或与其他SSH和rsync主机同步。
目录语法rsync [OPTION]... SRC DESTrsync [OPTION]... SRC [USER@]host:DESTrsync [OPTION]... [USER@]HOST:SRC DESTrsync [OPTION]... [USER@]HOST::SRC DESTrsync [OPTION]... SRC [USER@]HOST::DESTrsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]
命令参数-a 包含-rtplgoD-r 同步目录时要加上,类似cp时的-r选项-v 同步时显示一些信息,让我们知道同步的过程-l 保留软连接-L 加上该选项后,同步软链接时会把源文件给同步-p 保持文件的权限属性-o 保持文件的属主-g 保持文件的属组-D 保持设备文件信息-t 保持文件的时间属性--delete 删除DEST中SRC没有的文件--exclude 过滤指定文件,如--exclude “logs”会把文件名包含logs的文件或者目录过滤掉,不同步-P 显示同步过程,比如速率,比-v更加详细-u 加上该选项后,如果DEST中的文件比SRC新,则不同步-z 传输时压缩-e 指定所要使用的远程shell程序,默认为ssh。--port 连接daemon时使用的端口号,默认为873端
复印文件//将本地的rumenz.txt拷贝到远程rumenz.com服务器的tmp目录> rsync rumenz.txt rumenz@rumenz.com:/tmp//将远程远程rumenz.com服务器目录的rumenz.txt文件拷贝到本地> rsync rumenz@rumenz.com:/tmp/rumenz.txt .
复制目录//将本地的rumenz目录拷贝到远程rumenz.com服务器的tmp目录> rsync -r rumenz rumenz@rumenz.com:/tmp//把rumenz.com服务器上的rumenz目录拷贝到192.168.0.111服务器上> rsync -r rumenz@rumenz.com:/tmp/rumenz/ root@192.168.0.111:/home///排除某个目录,--exclude后面的路径不能为绝对路径,必须为相对路径才可以,否则匹配不上,就不会被排除掉> rsync -r --exclude=rumenz/bin rumenz@rumenz.com:/tmp/rumenz root@192.168.0.111:/home/
使用rsync镜像两台服务器的目录。> rsync -avz root@rumenz.com:/opt/pkg /opt/pkg