Linux网络配置命令

目录

1、查看网络接口信息 ifconfig

2、修改网络配置文件

3、设置网络接口参数 ifconfig

3.1 启用、禁用网络接口配置

3.2修改网卡IP

4、主机名称 hostname

4.1 主机名映射 /etc/hosts远程登录 ssh root@

5、查看路由表条目

5.1 查看路由表(route)

5.2查看路由配置(ip route)

5.3 添加、删除静态路由记录

5.4 添加删除静态路由

5.5 添加删除默认网关

6、netstat命令(-anpt、-anpu)

7、ss 命令

8、losf

9、测试网络连通性:ping

10、跟踪数据包 traceroute

11、域名解析 nslookup

11.1 域名解析配置文件

12、本地主机映射文件


1、查看网络接口信息 ifconfig

主机的网络接口卡(网卡)通常称为网络接口。在 Linux 操作系统中,使用 ifconfig 命令可以查看网络接口的地址配置信息

ens33:第一块以太网卡的名称。“ens33”中的“en”是“EtherNet”的缩写,表示网卡类型为以太网,“s”表示热插拔插槽上的设备,数字“33”表示插槽编号。
lo:“回环”网络接口,“loopback”回环网卡,它不代表真正的网络接口,而是一个虚拟的网络接口,其 IP 地址默认是“127.0.0.1”。回环地址通常仅用于测试本机网络
virb0 : 虚拟网卡 ,只有虚拟机才有虚拟网络

ifconfig     #显示已启用的网络接口,不包括禁用的设备
ifconfig -a  #显示所有活动及非活动的连接
ip a

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(1)第一行:以太网卡的名字不是常见的eth0,变成了ens33。
其中en代表以太网卡
ens33代表PCI接口的物理位置为(0,3), 其中横座标代表bus,纵座标代表slot
UP:代表此网络接口为启用状态(down为关闭状态)
RUNNING:代表网卡设备已连接
MULTICAST:表示支持组播
MTU:为数据包最大传输单元
(2)第二行:网卡的IP地址、子网掩码、广播地址
(3)第三行:IP v6地址
(4)第四行:Ethernet(以太网)表示连接类型;
ether:表示为网卡的MAC地址
(5)第五行:接受数据包个数、大小统计信息
(6)第六行:异常接受包的个数、如丢包量、错误等
(7)第七行:发送数据包个数、大小统计信息
(8)第八行:发送包的个数、如丢包量、错误等

注:
lo 是表示主机的回坏地址,IP地址固定为127.0.0.1,子网掩码为8位,表示本机。用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 HTTPD服务器的指定到回坏地址,在浏览器输入 127.0.0.1 就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道

virbr0是一个虚拟的网络连接端口,默认为0号虚拟网络连接端口;一般在通过虚拟机进行移植操作系统时,默认会以nat的网络地址转移,但是可以选择桥接或者是无网络连接也是可以的(因为本人用的是centos镜像的虚拟机,所以会有这一行)

2、修改网络配置文件

网络接口的配置文件默认位于/etc/sysconfig/network-script/ifcfg-ens33
文件名格式为 “ifcfg-XXX”,其中“XXX”是网络接口的名称。
例如,网卡 ens33 的配置文件是“ifcfg-ens33”, 回环接口 lo 的配置文件是“ifcfg-lo”。

在这里插入图片描述
在 CentOS 7 操作系统中,当修改了网络接口的配置文件以后,若要使新的配置生效, 可以重新启动 network 服务或者重启主机

systemctl restart network    //静态网络管理器

注:建议关闭NetworkManager服务,否则有时启动network会报错

NetworkManager是动态管理,没关NetworkManager创建ens36的话,在字符界面是看不到的,要删掉ens36再关掉NetworkManager。

systemctl stop NetworkManager       //动态网络管理器
systemctl disable NetworkManager   //disable开机自关闭

在这里插入图片描述

3、设置网络接口参数 ifconfig

ifconfig 命令不仅可以用于查看网卡配置,还可以修改网卡的 IP 地址、子网掩码,也可以绑定虚拟网络接口、激活或禁用网络接口

3.1 启用、禁用网络接口配置

在这里我们可以添加一个网卡新的网卡设备 ens37
如果只是禁用、启用某一个网络 接口(而不是所有接口),可分别使用两个接口控制脚本 ifdown、ifup

ifconfig ens37 up 
ifconfig ens37 down 
ifup ens33
ifdown ens33

在这里插入图片描述
在这里插入图片描述
虚拟网卡关了无法开启,要重新设

3.2修改网卡IP

为网卡绑定虚拟接口:在对服务器网络进行调试的过程中,有时候需要临时在同一个网卡上使用一个新的 IP 地址,但是又不能覆盖原有 IP 地址而导致服务程序不可用。
这时可以为网卡绑定一个虚拟接口,然后为虚拟接口设置新的 IP 地址(相当于一块网卡配多个 IP 地址)

ifconfig ens37:0 192.168.10.20 netmask 255.255.255.0   //临时配置网卡的ip地址
ifconfig ens37:0 192.168.10.20/24       //当不指定子网掩码时,将使用 IP 地址所在分类的默认子网掩码
 

在这里插入图片描述
在这里插入图片描述

4、主机名称 hostname

主机名:在 Linux 操作系统中,相当一部分网络服务都会通过主机名来识别主机,如果主机名配置不当,可能会导致程序功能出现故障
永久修改主机名要重启才能生效

hostname    //查看主机名
hostname  新主机名   //临时修改主机名称

hostnamectl set-hostname 新主机名   //永久修改主机名

vim /etc/hostname
 

4.1 主机名映射 /etc/hosts

      远程登录 ssh root@

vim /etc/hosts 
  192.168.190.10   yss  //主机名映射

切换到另一台主机

ssh  root@192.168.190.10    或    ssh root@yss

1、在当前主机
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、切换到另外一台虚拟机,主机名映射后远程登录
在这里插入图片描述
vim /etc/hosts //主机名映射
在这里插入图片描述
exit登出 远程登录

5、查看路由表条目

5.1 查看路由表(route)

路由表:Linux 操作系统中的路由表决定着从本机向其他主机、其他网络发送数据的去向,是排除网络故障的关键信息。
直接执行“route”命令可以查看当前主机中的路由表信息

route         //查看路由表信息
    Destination  目标网段的地址
    Gateway   下一跳路由器的地址
    Iface  发送数据的网络接口

route -n    //以数字形式访问(快)

在这里插入图片描述
在这里插入图片描述

当目标网段为“default”时,表示此行是默认网关记录
当下一跳为“gateway”时,表示目标网段是与本机直接相连的。
但是,直接执行“route”命令无法直接看出默认网关地址
0.0.0.0 代表所有地址都可以来访问

route -n #查看路由,使用-n可以将路由记录中的地址显示为数字形式,这可以跳过解析主机名的过程,在路由表条目较多的情况下能够加快执行速度

5.2查看路由配置(ip route)

ip route show

ip route     //查看路由配置

在这里插入图片描述

5.3 添加删除静态路由记录

设置路由记录 route=
route 命令不仅可以用于查看路由表信息,还可用来添加、删除静态的路由表条目,其中也包括设置默认网关地址(默认网关记录是一条特殊的静态路由条目)

5.4 添加删除静态路由

//添加静态路由,通过“route add”操作可以添加路由记录,结合“-net”选项指定目标网段的地址,结合“gw”选项指定下一跳路由器的IP 地址

route add -net 192.168.230.0/24 gw 192.168.190.1   //表示可以通过192.168.10.1到192.168.3.0/24网络
route del -net 192.168.230.0/24 
 

在这里插入图片描述

5.5 添加删除默认网关

添加、删除默认网关记录,需要注意的是,在同一个主机的路由表中只应有一条默认网关记录。若同时存在多条默认网关记录,则可能导致该主机的网络连接出现故障。
添加、删除默认网关记录时,与添加、删除静态路由记录的命令格式类似,但指定目标网段时只需简单地使用“default”表示即可

route  add default  gw  网关ip


route  del  default  gw  网关ip

route  del  default

在这里插入图片描述

6、netstat命令(-anpt、-anpu)

netstat命令查看当前操作系统的网络连接状态、路由表、接口统计等信息,它是了解网络状态及排除网络服务故障的有效工具
-n以数字的形式显示相关的主机地址、端口等信息
-r显示路由表信息
-a显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)
-l显示处g)于监听(Listenin状态的网络连接及端口信息。
-t查看 TCP(Transmission Control Protocol,传输控制协议)相关的信息。
-u显示 UDP(User Datagram Protocol,用户数据报协议)协议相关的信息。
-p显示与网络连接相关联的进程号、进程名称信息(该选项需要 root 权限
-anpt组合键查看TCP(httpd、sshd是TCP)
-anpu组合键查看UDP(ntpd是UDP)

用法:①通常使用“-anpt”组合选项,以数字形式显示当前系统中所有的 TCP 连接信息,同时显示对应的进程信息
②配合管道符grep过滤出特定的记录

输入命令没反应可能是因为服务没打开

systemctl  status  sshd       //查看命令打开了没
netstat  -anpt | grep sshd   //查看sshd端口号

netstat  -anpt | grep 22

netstat  -anpt | grep :22

netstat  -anpt | grep ":22"   //ssh默认端口号:22

netstat   -lnpt | grep sshd
netstat  -lnpu | grep ntp    //查看ntpd端口号

netstat  -rn    //以数字形式显示路由表、主机地址、端口信息

在这里插入图片描述


查看处于监听状态的httpd
在这里插入图片描述

7、ss 命令

ss 命令:也可以查看网络连接情况,主要用于获取 socket (ip+端口号)统计信息,它可以显示和 netstat 命令类似的输出内容。
但 ss 的优势在于它能够显示更多更详细的有关 TCP 和连接状态的信息,而且比 netstat 更快速更高效
当服务器的socket连接数量变得非常大时,无论是使用netstat命令还是直接cat /proc/net/tcp,执行速度都会很慢。
ss快的秘诀在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux 内核中第一手的信息,这就确保了ss的快捷高效
ss命令是Linux CentOS 7中iproute软件包的一部分,默认已经安装。

time ss    //使用ss经过的时间
time netstat -an   //使用netstat经过的时间

time netstat -ant | grep EST | wc -l    //查看并发连接数ss和netstat对比

time ss -o state established | wc -l

为什么ss比netstat快:

netstat是遍历/proc下面每个PID目录,ss直接读/proc/net下面的统计信息。所以ss执行的时候消耗资源以及消耗的时间都比netstat少很多

选项:
-h:–help 通过该选项获取更多的使用帮助。 
-V:–version 显示软件的版本号。 
-t:–tcp 显示 TCP 协议的 sockets。 
-u:–udp 显示 UDP 协议的 sockets。 
-n:–numeric 不解析服务的名称,如 “22” 端口不会显示成 “ssh”。
-l:–listening 只显示处于监听状态的端口。 
-p:–processes 显示监听端口的进程。 
-a: --all 对 TCP 协议来说,既包含监听的端口,也包含建立的连接。 
-r: --resolve 把 IP 解释为域名,把端口号解释为协议名称。

ss -tn | grep  22      //查看ssh端口号

ss -tn | grep 80

先访问ip才能查到端口

ss -o state ‘established’ | grep ssh

#-o选项可用于显示计时器信息。该信息向我们展示了诸如重新传输计时器值、已经发生的重新传输的数量以及已发送的keepalive探测的数量

 ss -t state established

#established, syn-sent, syn-recv, fin-wait-1, fin-wait-2, time-wait, closed, closed-wait, last-ack监听和关闭等状态
Recv-Q Send-Q Local Address:Port Peer Address:Port
0 52 192.168.245.211:ssh 192.168.245.1:64550

 ss -tnl sport le 500

//过滤监听状态下所有小于500的端口

8、losf

lsof 命令是一个在Unix和Linux系统上用于查看当前系统中打开的文件和进程的工具。它的名字是 “List Open Files” 的缩写。通过 lsof 命令,你可以查看系统中当前打开的文件、网络连接、管道和设备等资源信息。
常见用法

lsof             //列出所有打开的文件和资源

lsof -p  进程ID      //列出指定进程的打开文件和资源

lsof -u   用户名     //列出指定用户打开的文件和资源

lsof /path/to/file    //列出指定文件的打开进程

lsof -i        //列出网络连接信息,包括TCP、UDP等

lsof -U       //列出Unix域套接字

附加选项

-c <command>: 指定进程名或命令的名称,列出该命令打开的所有文件。
-t: 仅列出进程ID(PID),而不显示其他信息。
-i [protocol:][@hostname|hostaddr][:service|port]: 可以根据网络连接的具体条件进行过滤查看。
-n: 不解析主机名,加快显示速度。

注意事项

lsof 命令通常需要 root 权限才能显示所有进程的信息,尤其是对于其他用户的进程和系统级资源。
lsof 的输出结果可以非常庞大和详细,特别是在系统负载较高或者进程数众多的情况下,建议根据需要结合适当的选项和过滤条件使用。

lsof 是系统管理员和开发人员调试和监视系统的有用工具,能够帮助定位和解决文件打开问题、网络连接问题以及资源占用情况等

9、测试网络连通性:ping

使用 ping 命令可以向目标主机持续地发送测试数据包,并显示反馈结果,直到按 Ctrl +C 组合键后中止测试,并显示最终统计结果

ping 192.168.10.10       //最常用是后面跟ip地址

ping www.baidu.com     //后面还可跟域名

ping -c 10 192.168.10.10     //-c表示指定ping的次数

ping -c 10 -i 0.5 192.168.10.10  //-i 秒数:设定间隔几秒送一个网络封包给一台机器,预设值是一秒送一次。

ping -w 5 www.baidu.com    //ping5秒,5秒后结束

如果ping不通,可能DNS域名解析有问题,可以把DNS换成8.8.8.8或者别的

若看到“Destination Host Unreachable”的反馈信息, 则表示目的主机不可达,可能目标地址不存在或者主机已经关闭;
若看到“Network is unreachable”的反馈信息,则表示没有可用的路由记录(如默认网关),无法达到目标主机 所在的网络。
当目标主机有严格的防火墙限制时,或者当网络中存在影响通信过程稳定性的因素(如网卡故障、病毒或网络攻击等)时,可能收到 “Request timeout”的反馈结果
案列
[root@localhost ~]# ping 192.168.10.11
PING 192.168.10.11 (192.168.10.11) 56(84) bytes of data.
From 192.168.10.9 icmp_seq=1 Destination Host Unreachable
From 192.168.10.9 icmp_seq=2 Destination Host Unreachable
From 192.168.10.9 icmp_seq=3 Destination Host Unreachable
From 192.168.10.9 icmp_seq=4 Destination Host Unreachable
From 192.168.10.9 icmp_seq=5 Destination Host Unreachable
From 192.168.10.9 icmp_seq=6 Destination Host Unreachab

//ping不通,DNS域名解析有问题

10、跟踪数据包 traceroute

跟踪数据包的路由途径:traceroute
若服务器上没有 traceroute 命令,可通过 yum 方式安装 traceroute 软件包
traceroute 命令可以用于测试从当前主机到目的主机之间经过了哪些网络结点,并显示各中间结点的连接状态(响应时间)。对于无法响应的结点,连接状态将显示为“*”
[root@localhost ~]# traceroute 192.168.245.201
traceroute to 192.168.245.201 (192.168.245.201), 30 hops max, 60 byte packets
1 192.168.245.201 (192.168.245.201) 0.691 ms 0.594 ms 0.529 ms
可以看到这台主机和201这台机器中间没有经过路由,是直连或连着交换机的状态

traceroute 命令能够比 ping 命令更加准确地定位网络连接的故障点(中断点),因此执行速度会比 ping 命令稍慢。
在网络测试与排错过程中,通常会先使用 ping 命令测试与目的主机的网络连接,如果发现网络连接有故障,再使用 traceroute 命令跟踪查看是在哪个中 间结点存在故障。
配置网络参数
两种方式:临时配置和永久配置
临时配置:临时配置:通过命令行直接修改当前正在使用的网络地址,修改后立即可以生效。 这种方式操作简单快速、执行效率高,一般在调试网络的过程中使用。但由于所做 的修改并没有固定地存放在静态的文件中,因此当重启 network 服务或重启主机后 将会失效。
永久配置:通过配置文件来存放固定的各种网络地址,需要重启 network 服务或重 启主机后才会生效。这种方式操作上相对要复杂一些,但相当于“永久配置”,一般 在需要为服务器设置固定的网络地址时使用

查看本主机ip
[root@centos7 ~]# hostname -i
fe80::20c:29ff:fe4f:e948%ens33 192.168.245.151 192.168.122.1

11、域名解析 nslookup

软件包的名字就可以使用 yum install -y bind-utils

[root@localhost ~]# nslookup www.google.com
Server: 114.114.114.114 #当前的上连DNS服务器
Address: 114.114.114.114#53 #当前的上连DNS服务器的IP地址和端口
#以下为 DNS 解析的反馈结果
Non-authoritative answer:
Name: www.google.com #解析的IP地址
Address: 31.13.87.19
Name: www.google.com
Address: 2001::45ab:f20b

11.1 域名解析配置文件(etc/resolv.conf)

bind-utils 安装包

vim /etc/resolv.conf
search localdomain
nameserver 202.106.0.20
nameserver 202.106.148.1


resolv.conf 文件中的“search localdomain”行用来设置默认的搜索域(域名扩展名)。
例如,当访问主机“localhost”时,就相当于访问“localhost.localdomain”。
一行一个DNS,最多配置三个DNS

/etc/resolv.conf 文件中记录了本机默认使用的 DNS 服务器的地址信息,对该文件所做 的修改将会立刻生效。Linux 操作系统中最多可以指定 3 个(第 3 个以后的将被忽略)不同 的 DNS 服务器地址,优先使用第一个 DNS 服务器。例如,执行以下操作可以指定默认使用的两个 DNS 服务器地址分别位于 202.106.0.20 和 202.106.148.1。

12、本地主机映射文件(/etc/hosts)

/etc/hosts 文件中记录着一份主机名与 IP 地址的映射关系表,一般用来保存经常需要访问的主机的信息。当访问一个未知的域名时,先查找该文件中是否有相应的映射记录,如果找不到再去向 DNS 服务器查询。
若在/etc/hosts 文件中添加“119.75.218.70 www.baidu.com”的映射记录,则当访问网站 www.baidu.com 时,将会直接向 IP 地址 119.75.218.70 发送 Web 请求,省略了向 DNS

Dig是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,MX记录等相关信息的工具,系统默认安装

vim /etc/hosts

    www.baidu.com  

对于经常访问的一些网站,可以通过在/etc/hosts 文件添加正确的映射记录,减少 DNS 查询过程,从而提高上网速度。当然,若添加了错误的映射记录,则可能导致网站访问出现 异常。另外,因为 hosts 文件只保存在本地,所以其中的映射记录也只适用于当前主机,而无法作用于整个网络。

dig www.baidu.com #后跟域名直接查询

  • 21
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值