Linux 网络命令

2023-05-16

1. ifconfig查看当前活着的网络接口信息

[root@localhost ~]#ifconfig -a    #表示显示所有网卡包括没有启动的网卡
[root@localhost ~]#ifconfig ens33 down    #关闭网卡
[root@localhost ~]#ifconfig ens33 up        #开启网卡
[root@localhost ~]#ifconfig ens36:0 192.168.10.200    #设置临时虚拟网卡
[root@localhost ~]#ifconfig -s            #网络通讯情况
e1ba7dab6715ebfd4319552e9b49a847.png 9ac4f8fca72bea4ed06b9bc32e8067a3.png

补充1:nmcli(绿色代表正在用的)

59dff08b60f86e54e18d0b0052f891c8.png

补充2:ip address修改IP地址

[root@feizirui ~]#ip address add 192.168.10.100/24 dev ens33
[root@feizirui ~]#ip address del 192.168.10.10/24 dev ens33
f5184c9a5d8ffcca692e4833522513f3.png a0601c28215b3acbcc548210a9081d80.png

2. hostname查看或设置主机名

查看主机名:

[root@localhost ~]#hostname
localhost.localdomain
690798d60c750161b4d1e980ea8fb07c.png

通过hostnamectl来修改主机名:

[root@localhost ~]#hostnamectl set-hostname feizirui
[root@localhost ~]#bash
[root@feizirui ~]#
2d3ed8bf5998a7fd4ae0034f27253703.png

3. route查看或设置主机中的路由表

[root@localhost ~]#route
a3f40c0d26131cbaefe267082aaa109b.png
[root@localhost ~]#route -n
dd6ed5826d2fb97989151f6be51c5d5a.png

4. netstat查看网络连接状态

netstat 选项
-a:显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)
-n:以数字的形式显示相关的主机地址、端口等信息 
-r:显示路由表信息
-l:显示处于监听(Listening)状态的网络连接及端口信息 
-t:查看 TCP(Transmission Control Protocol,传输控制协议)相关的信息 
-u:显示 UDP(User Datagram Protocol,用户数据报协议)协议相关的信息
-p:显示与网络连接相关联的进程号、进程名称信息(该选项需要 root 权限)
5f99810c2be5e31e0e23a28c5d102873.png

5. ss查看网络连续情况

  • ss命令主要用于获取 socket 统计信息,它可以显示和 netstat 命令类似的输出内容。但ss命令的优势在于它能够显示更多更详细的有关TCP和UDP连接状态的信息,而且比netstat更快速更高效。当服务器的socket连接数量变得非常大时,无论是使用netstat命令还是直接cat /proc/net/,执行速度都会很慢。ss命令快的秘诀在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux 内核中第一手的信息,这就确保了ss命令的快捷高效。

  • ss命令是Linux CentOS 7中iproute软件包的一部分,默认已经安装。

ss [选项] 
-t:tcp协议相关
-u:udp协议相关
-w:裸套接字相关
-x:unix sock相关
-l:listen状态的连接
-a:所有
-n:数字格式
-p:相关的程序及PID
-e:扩展的信息
-m:内存用量
-o:计时器信息
-r:把IP解释为域名,把端口号解释为协议名称
5e188a7d3136f1014988e5c0560ff5db.png 41b5f2c33653cab25e20a71d583a4ddc.png

6. ping测试网络连通性(使用ICMP协议)

ping [选项] 目标主机
bf5ab986c59ec15aa314e0eb449e4387.png

7. traceroute路由追踪

traceroute IP地址
1b5a007f94d14db522dea958b959cb40.png

8. nslookup域名解析

nslookup 域名
892d908dc3f5cc2f804fb2574c9b927e.png

补充:dig可以显示出更多详细信息

5d6f615c2b1f1e6cdee5a1a0d1356dc5.png

9. 永久配置网络相关配置文件

  • (1)配置网卡

[root@localhost ~]#vim /etc/sysconfig/network-scripts/ifcfg-ens33 

BOOTPROTO=static    ##获取地址静态方式
ONBOOT=yes        ##开机自启
IPADDR=192.168.10.10    ##IP地址
NETMASK=255.255.255.0    ##子网掩码
GATEWAY=192.168.10.2    ##网关
DNS1=8.8.8.8        ##DNS1:谷歌的
DNS2=114.114.114.114    ##DNS2:三大运营商

[root@localhost ~]#systemctl restart network    ##重启网卡
[root@localhost ~]#ping www.baidu.com -c4
3e670e9ecd5ed8c6030de523e026d96c.png f60aa042c6e4e3d1e95182c824bd3042.png
  • (2)红帽修改网卡命令:

[root@localhost ~]#nmcli con mod ens33 ipv4.addresses 192.168.10.100/24 ipv4.gateway 192.168.10.2 ipv4.dns 8.8.8.8 ipv4.method manual connection.autoconnect yes
[root@localhost ~]#nmcli con reload    ##重新加载
[root@localhost ~]#nmcli con up ens33   ##开启网卡
5076cf025393426103191faa7c5c7f97.png ddd02af6f98d1cf7fdb30cc8fb9d792c.png
  • (3)域名解析配置文件:/etc/hosts

67ae38fc4a4ef5d8f9d96ae5ad08e037.png 9e97419fc18b7d3c5d495bf8faf50b55.png

hosts文件和DNS服务器的比较

  • 默认情况下,系统首先从hosts文件查找解析记录

  • hosts文件只对当前的主机有效

  • hosts文件可减少DNS查询过程,从而加快访问速度

10. scp远程同步

[root@localhost ~]#scp /etc/passwd root@192.168.10.20:/opt/passwd
14158d9c96c09c4428b58c5fbb59926e.png fd41431b4d5da5e5136feecd2d605283.png

11.多网卡绑定

将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。直接给两块网卡设置同一IP地址是不可以的。通bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址。

实验环境:CentOS7
实验目的:bond将多块网卡根据排列组合的功能的不同当成一块网卡使用
1、添加一块网卡
2、修改配置文件
cd /etc/sysconfig/network-scripts/
配置1:
vim ifcfg-bond0
NAME=bond0
TYPE=bond
DEVICE=bond0
BOOTPROTO=none
IPADDR=192.168.10.100
NETMASK=255.255.255.0
GATEWAY=192.168.10.2
BONDING_OPTS="mode=1 miimon=100 fail_over_mac=1"

配置2:
vim ifcfg-ens33
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
MASTER=bond0
SLAVE=yes
ONBOOT=yes

配置3:
cp ifcfg-ens33 ifcfg-ens36
vim ifcfg-ens36
BOOTPROTO=none
NAME=ens36
DEVICE=ens36
MASTER=bond0
SLAVE=yes
ONBOOT=yes

3、重启服务:systemctl restart network

4、测试:先ping查看bond0的正常情况:ping 192.168.10.100 -c4
     然后去虚拟机断掉一块网卡不影响bond0
      最后重新开启一个端口验证:ssh 192.168.10.100

操作:

1、添加网卡

84894ba5197f914d66ad77e9a6756ad6.png

2、修改配置文件

配置1:创建并修改bond0虚拟网卡

7e9817bf54357d97d8fdac646bd7349d.png

配置2:修改ens33网卡

ab881c2cb7275a55cbbfdfb00170e2b0.png

配置3:创建并修改ens36网卡

10e31ade47e3e311cfe8b8fcb87314e9.png

3、重启网卡

792e0bb52bd041d22defd23ac96b7649.png

4、测试 先ping,bond0查看的正常情况:ping 192.168.10.100 -c4

635dfab5f0b2d5a742e1f206b5b5efb7.png

然后去虚拟机断掉一块网卡不影响bond0

a08fadaade634f1dee1414d608d037cb.png 1e7426df037e664bab723f5f564d5180.png

最后重新开启一个端口验证:ssh 192.168.10.100

bcf3dbe7059b7896b9ee785e14e92c16.png 2991a460d540fe304d466c8004d047c7.png c2ea04e87a9650ef62a6ca06b3e178f7.png b9a7772466547445a3a38edb93f8dad4.png

12. tcpdump

网络数据包截获分析工具。支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句帮助去除无用的信息。

参数说明:

-a:尝试将网络和广播地址转换成名称。
-c<数据包数目>:收到指定的数据包数目后,就停止进行倾倒操作。
-d:把编译过的数据包编码转换成可阅读的格式,并倾倒到标准输出。
-dd:把编译过的数据包编码转换成C语言的格式,并倾倒到标准输出。
-ddd:把编译过的数据包编码转换成十进制数字的格式,并倾倒到标准输出。
-e:在每列倾倒资料上显示连接层级的文件头。
-f:用数字显示网际网络地址。
-F<表达文件>:指定内含表达方式的文件。
-i<网络接口>:使用指定的网络截面送出数据包。
-l:使用标准输出列的缓冲区。
-n:不把主机的网络地址转换成名字。
-N:不列出域名。
-O:不将数据包编码最佳化。
-p:不让网络界面进入混杂模式。
-q:快速输出,仅列出少数的传输协议信息。
-r<数据包文件>:从指定的文件读取数据包数据。
-s<数据包大小>:设置每个数据包的大小。
-S:用绝对而非相对数值列出TCP关联数。
-t:在每列倾倒资料上不显示时间戳记。
-tt:在每列倾倒资料上显示未经格式化的时间戳记。
-T<数据包类型>:强制将表达方式所指定的数据包转译成设置的数据包类型。
-v:详细显示指令执行过程。
-vv:更详细显示指令执行过程。
-x:用十六进制字码列出数据包资料。
-w<数据包文件>:把数据包数据写入指定的文件。

案例:

[root@server ~]#tcpdump -D        #tcpdump查看网卡:不指定任何参数,监听第一块网卡上经过的数据包。主机上可能有不止一块网卡,所以经常需要指定网卡。
 3 [root@server ~]#tcpdump -i ens33    #指定查看ens33 网卡
[root@server ~]#tcpdump host 192.168.10.10 -i ens33    #监听特定主机,监听主机192.168.10.10的通信包,注意:出、入的包都会被监听。
[root@server ~]#tcpdump src host 主机地址    #特定来源
[root@server ~]#tcpdump dst host 主机地址    #特定目标地址
[root@server ~]#tcpdump host hostname    #如果不指定src跟dst,那么来源或者目标是hostname的通信都会被监听
[root@server ~]#tcpdump -i ens33 -nn icmp and src host 192.168.10.20 and dst host 192.168.10.10    #面试题
 [root@server ~]#tcpdump ip host 192.168.10.10 and 192.168.10.20 -i ens33    #只抓取特定主机之间的数据包
[root@server ~]#tcpdump port 80
[root@server ~]#tcpdump tcp port 22 and src host 192.168.10.10 -i ens33
source: https://www.cnblogs.com/feizirui/p/16800006.html

记得点「」和「在看」↓

爱你们

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux 网络命令 的相关文章

随机推荐

  • 学习科大讯飞的StatQuest机器学习课笔记(1)

    简介 1 机器学习都是关于作出预测和分类的 2 原始数据被称为训练数据 xff0c 使用测试数据来评估机器学习方法 xff0c 不要被机器学习方法与训练数据的匹配程度所愚弄 3 对训练数据拟合效果好 xff0c 但预测效果不佳 xff0c
  • 学习科大讯飞的StatQuest机器学习课笔记(2)

    Day2学习笔记07 20 ROC和AUC 1 假设一个逻辑回归曲线可以推测出一个结果的概率 xff0c 然后选取某个概率作为分类的阈值 由于使用不同概率作为分类的阈值会计算出不同的敏感性和特异性 xff0c 因此为了评价哪个概率会得出最佳
  • 学习科大讯飞的StatQuest机器学习课笔记(3)

    Day3学习笔记07 21 最小二乘法 线性回归 用数据拟合一条直线y 61 ax 43 b 1 我们要使观测值与直线之间的距离 残差 的平方最小化 2 通过求导找到它等于0时的点 3 这条直线使平方和达到了最小化 odds 胜负比 和od
  • 七款经典4.2v锂电池充电电路图详解 - 全文

    4 2v锂电池充电电路图 xff08 一 xff09 xff1a 锂电池充电均衡电路 这个均衡电路用的是三个一模一样的并联稳压电路组成的 xff0c 每个电池上并一个 电路原理图如下 xff1a 每个稳压电源都调节到4 2V 均衡的原理是
  • sqlserver删除master数据库中的用户创建的表

    最近在使用SQL Server2019 xff0c 在程序中执行建表语句默认建到了master数据库中 xff0c 使用SSMS SQL Server Management studio 执行以下语句时提示 xff1a 不允许对系统目录进行
  • QLineEdit和QDateTimeEdit等含编辑框使用stylesheet配置背景透明时,鼠标进入离开背景闪烁问题的解决

    在使用QLineEdit和QDateTimeEdit等含编辑框的控件时如果使用stylesheet设置背景透明如下 xff1a QLineEdit background color transparent color white QLine
  • 使用Poco库进行加解密和签名验签

    最近一个朋友让我帮忙找一下使用Poco库进行非对称加密的例子 xff0c 通过百度 xff0c Google找到两个不错的在此总结一下 xff1a Poco开源代码库地址 xff1a https github com pocoproject
  • 走进开源代码(一)

    目录 前言 从哪里开始 xff1f 总结 前言 今天是个既特殊又年轻的节日 双十一 剁手节 xff0c 也算是个有纪念意义的开端吧 xff01 上周参加了系统架构设计师考试 xff0c 论文没有写完 xff0c 虽然这次肯定是过不了了 xf
  • 走进开源代码(二)

    目录 一 下载源代码 xff0c 了解目录结构 二 src目录介绍 总结 上一篇文章写了通过两篇文章大致了解比特币项目的目的和解决问题的策略 xff0c 本节正式走进源代码 xff1b 一 下载源代码 xff0c 了解目录结构 比特币项目的
  • [转]深度剖析闪电网络

    转自 xff1a https new qq com omn 20201108 20201108A04RZW00 html 闪电网络 xff08 Lighting Network xff09 是比特币的二层扩容方案 xff0c 由 Josep
  • 听李天飞《大话西游》有感

    作为一个老程序员搬砖之余喜欢看些传统文化相关的东西 xff0c 去年春节期间由于新冠疫情影响 xff0c 很多培训机构都把免费的网络课程作为力推的上课形式 xff0c 其中也包括学而思 在陪孩子上学而思网校的课程时 xff0c 有个 李天飞
  • 走进开源代码(三)

    由于工作的原因 xff0c 虽然是一名C 43 43 程序员 xff0c 平时工作中还是使用的C 43 43 99 xff0c 而比特币v0 20 1的源码是C 43 43 11写的 xff0c 虽然之前对C 43 43 11也有些了解 x
  • Linux下开发Qt界面程序时命令行传参数的一个坑

    今天在Linux下开发Qt界面程序时发现一个奇怪的问题 xff0c 程序执行如下命令却会打印日志和弹出对话框 test name xxx 代码如下 xff1a include lt QApplication gt include lt QM
  • 树莓派为连接不同Wifi分配固定IP的方法

    由于在家里和外面两种场景下使用树莓派 xff0c 家里的wifi是192 168 3 1 xff0c 在外面我用的我的360随身wifi xff0c 它的IP固定是192 168 253 1 xff08 百度未找到修改它的方法 xff09
  • ajax-Access-Control-Allow-Origin跨域问题解决

    首先 xff0c 在解决之个问题之前 xff0c 我们要弄明白为什么会出现跨域问题 跨域问题是浏览器对于ajax请求的一种安全限制 xff1a 一个页面发起的ajax请求 xff0c 只能是与当前页域名相同的路径 xff0c 这能有效的阻止
  • SSH Config 那些你所知道和不知道的事

    SSH xff08 Secure Shell xff09 是什么 xff1f 是一项创建在应用层和传输层基础上的安全协议 xff0c 为计算机上的 Shell xff08 壳层 xff09 提供安全的传输和使用环境 也是专为远程登录会话和其
  • 在虚拟云主机部署pure-ftpd后,从另一个虚拟云主机连接该ftp服务的一些问题

    问题描述 xff1a 最近的一个项目需要在公网搭建一个ftp服务器 xff0c 同时开发的Java程序需要运行在另一台公网服务器上 xff0c 开始时在本地开发机器上测试 xff0c 连接公网的ftp服务器 xff0c 上传文件都没有问题
  • 树莓派4B安装Ros 2 Foxy踩坑记录

    1 通过树莓派官方提供的写卡工具raspberry pi imager选择Ubuntu 20 04 5 xff08 64 bit xff09 xff0c 因为我打算用一个8G的存储卡安装ros 2 xff0c Ubuntu 22 04的比较
  • 浅谈第三方登录用户表结构设计方案

    国民两大流量入口 xff0c 大家不说也想到了 xff0c 分别是微信和QQ 所以为了方便获取用户来源都对接了微信登录或者QQ登录 xff0c 这一类型的第三方登录入口 今天就以对接微信登录 QQ登录与苹果登录 来说说对第三方用户体系与我方
  • Linux 网络命令

    1 ifconfig查看当前活着的网络接口信息 root 64 localhost ifconfig a 表示显示所有网卡包括没有启动的网卡 root 64 localhost ifconfig ens33 down 关闭网卡 root 6