Linxu网络设置

前言

linux上设置网络需要设置 IP、子网掩码、网关、DNS等。设置正确才可访问网络,否则会出现无法联网的问题。下面会写出如何设置IP等信息,如何处理路由表等操作。

一. 查看网络配置

1.1 查看所有活动网接口的信息

执行ifconfig 命令

ens33:第一块以太网卡的名称。“ens33”中的“en”是“EtherNet”的缩写,表示网卡类型为以太网,“s”表示热插拔插槽上的设备(hot-plug Slot),数字“33”表示插槽编号。

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

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

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

查看指定网络接口信息

ifconfig 网络接口

1.2查看指定的网络接口信息(不论该网络接口是否处于激活状态)

ifconfig 指定网卡

ens33:第一块网卡的名称(33是网卡编号)

inet:IP地址

netmask:子网掩码

broadcast:广播地址

1.3添加临时网卡IP

简单、快速,可直接修改运行中的网络参数

一般只适合在调试网络的过程中使用

系统重启以后,所做的修改将会失效

临时设置网卡IP和临时添加网卡在重启网卡之后都会消失还原

systemctl restart network

ifconfig ens33:1 192.168.72.72/24

或 ifconfig ens33:1 192.168.72.72 netmask 255.255.255.0

1.4永久配置—通过配置文件修改网络参数

修改各项网络参数的配置文件

适合对服务器设置固定参数时使用

需要重载网络服务或者重启以后才会生效

修改网络接口配置文件

vim /etc/sysconfig/network-scripts/ifcfg-ens33

二、查看主机名hostname

hostname命令

查看或设置当前主机名

2.1临时修改主机名

hostname[主机名] 只能在第二窗口查看

bash相当于进入另一个窗口

2.2永久设置主机名

hostnamectl set-hostname 主机名

或者vim /etc/hostname(设置完后需重启系统才生效)

重启电脑后依然存在

或者

三、查看路由表条目 route

3.1查看或设置主机中路由表信息

当下一跳为“gateway”时,表示目标网段是与本机直接相连的;

当目标网段为“default”时,表示此行是默认网关记录;

但是,直接执行“route”命令无法直接看出默认网关地址

Destination 列对应目标网段的地址

Gateway 列对应下一跳路由器的地址

Iface 列对应发送数据的网络接口

3.2数字形式显示

route -n

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

3.3查看路由配置

ip route show或ip route

3.4添加静态路由条目

临时添加路由(重启network服务失效)

route add -net 192.168.200.0/24  gw 192.168.94.1
 
-net:指定目标网段的地址
 
gw:指定下一跳路由器的 IP 地址
 
dev: 为路由指定的输出接口
 
删除静态路由条目
 
route del -net 192.168.200.0/24

重启网卡后失效

删除静态路由条目

默认路由设置

四、查看网络连接情况

查看系统的网络连接状态、路由表、接口统计等信息

4.1netstat命令

格式:

netstat [选项]

选项作用

-a 显示当前主机中所有活动的网络连接信息
-n 以数字的形式显示相关的主机地址、端口等信息
-r 显示路由表信息
-l 显示处于监听状态的网络连接及端口信息
-t 查看TCP协议相关的信息
-u 显示UDP协议相关的信息
-p 显示与网络连接相关联的进程号、进程名称信息(需要root权限)

用法:

通常使用“-anpt”组合选项,以数字形式显示当前系统中所有的 TCP 连接信息,同时显示对应的进程信息

配合管道符grep过滤出特定的记录

Proto 显示连接使用的协议

RefCnt 表示连接到本套接口上的进程数量

Types 显示套接口的类型

State 显示套接口当前的状态

Path 表示连接到套接口的其它进程使用的路径名

4.2ss/lsfo命令

ss [选项] #查看系统的网络连接情况,获取socket统计信息

lsof [选项] #查看打开服务进程的端口(TCP、UDP)

4.2.1 常用参数

-h通过该选项获取更多的使用帮助。
-V显示软件的版本号。
-t显示 TCP 协议的 sockets。
-u显示 UDP 协议的 sockets。
-n不解析服务的名称,如 “22” 端口不会显示成 “ssh”。
-l只显示处于监听状态的端口。
-p显示监听端口的进程。
-a对 TCP 协议来说,既包含监听的端口,也包含建立的连接。
-r把 IP 解释为域名,把端口号解释为协议名称。
-o选项可用于显示计时器信息。该信息向我们展示了诸如重新传输计时器值、已经发生的重新传输的数量以及已发送的keepalive探测的数量
-w用于字符串精确匹配

ss -nltp | grep :22 查看tcp的所有包含22的端口

lsof -i <条件>

列出符合条件的进程。(4、6、协议、:端口、 @ip

五、测量命令的执行时间time命令查看netstat和ss的区别

5.1time里参数的含义

测量命令的执行时间或者系统资源的使用情况

real: 从进程1s开始执行到完成所耗费的CPU总时间。该时间包括1s进程执行时实际使用的CPU时间,1s进程耗费在阻塞上的时间(如等待完成I/o操作)和其他进程所耗费的时间(Linux是多进程系统,1s在执行过程中,可能会有别的进程抢占CPU) 。

user :进程1s执行用户态代码所耗费的CPU时间。该时间仅指 1s 进程执行时实际使用的cPU时间,而不包括其他进程所使用的时间和本进程阻塞的时间。

sys :进程 1s 在内核态运行所耗费的 CPU时间,即执行内核系统调用所耗费的 CPU时间。现在,我们应该对这三个时间非常清楚了吧。1s 命令的真正执行时间是多少﹖答案就是user+sys的时间,但一般情况下,real=user+sys,因而我们就使用real 的时间作为 1s 的执行时间了

5.2netstat和ss命令的区别

ss比netstat快的主要原因是,netstat是遍历/proc下面每个PID目录,ss直接读/proc/net下面的统计信息。所以ss执行的时候消耗资源以及消耗的时间都比netstat少很多。 当服务器的socket连接数量非常大时(如上万个),无论是使用netstat命令还是直接cat /proc/net/tcp执行速度都会很慢,相比之下ss可以节省很多时间

ss命令用来替代netstat的,可以用来获取socket统计信息,它可以显示和netstat类似的内容。

ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。

六、测试网络连接 ping、traceroute

6.1ping命令测试

作用: 测试网络连通性

格式: ping 【选项】目标主机

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

案例:最常用的是后面跟IP地址,还可以跟域名

6.2ping命令选项测试

6.2.1-c表示指定ping的次数

ping -c 5 www.baidu.com ##发送三次包

6.2.2-i秒数:设定间隔几秒送一个网络封包给一台机器,预设值是一秒送一次

ping -i 0.25 www.baidu.com 0.25秒发送一个封包

6.2.3-w表示ping的超时时间为3s,意思是只ping3秒,5秒后结束

ping -w 3 www.baidu.com ###只发3s包

6.3 traceroute跟踪数据包

作用:测试从当前主机到目的主机之间经过的网络节点

格式: traceroute 目标主机地址

traceroute www.baidu.com ###追踪访问百度所经过的节点

6.4 nslookup域名解析

6.4.1nslookup域名解析

作用:测试DNS域名解析

格式:nslookup 目标主机地址 [DNS服务器地址]

6.4.2域名解析配置文件查看与修改 resolv.conf

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

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

6.4.3本地主机映射/etc/hosts 文件

etc/hosts 文件中记录着一份主机名与 IP 地址的映射关系表,一般用来保存经常需要访问的主机的信息。当访问一个未知的域名时,先查找该文件中是否有相应的映射记录,如果找不到再去向 DNS 服务器查询。

若在/etc/hosts 文件中添加“192.168.22.22 www.sun.com”的映射记录,则当访问网站 www.sun.com 时,将会直接向 IP 地址 192.168.22.22 www.sun.com发送 Web 请求。

6.4.4hosts文件和DNS服务器的比较

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

hosts 文件和 DNS 服务器的比较 默认情况下,系统首先从 hosts 文件查找解析记录

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

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

总结

查看网络配置:ifconfig、hostname、route、netstat、ss

测试网络连接:ping、traceroute、nslookup、dig

设置网络地址参数:临时配置、永久配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值