Linux网络设置

  • 一. 虚拟网卡模式介绍
  • 二. 查看网络配置
  • 1. 使用ifconfig命令查看网络接口地址
  • 1.1 查看活动的网络接口设备
  • 1.2 查看指定的网络接口信息
  • 2. 使用ip/ethtool命令查看网络接口
  • 3. 使用route命令查看路由表条目
  • 4. 使用netstat、ss命令查看网络连接情况
  • 5. 查看主机名hostname
  • 三. 测试网络连接
  • 1.使用ping命令测试网络连通性
  • 2. 使用traceroute命令跟踪数据包的路由途径
  • 3. 使用nslookup命令测试DNS域名解析Name server
  • 四、设置网络地址参数
  • 4.1 设置网络接口参数 ifconfig
  • 4.2 设置路由记录route
  • 五、网络配置文件修改
  • 5.1 网络接口配置文件
  • 5.2 启动,禁用网络接口配置
  • 5.3 主机名称配置文件
  • 5.4 域名解析配置文件


一. 虚拟网卡模式介绍

桥接模式 vmnet0 局域网可以访问虚拟服务器,把虚拟机暴露在局域网环境下,可以直接被访问
仅主机模式 vmnet1 仅主机相连,无法与外部通讯,把虚拟机直接构建成局域网无法访问外部网络
NAT模式 vmnet8 把虚拟机连接到类似三层交换机的虚拟网卡上,不仅可以内部通信,还可以外部通信

二. 查看网络配置

1. 使用ifconfig命令查看网络接口地址

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

1.1 查看活动的网络接口设备

ifconfig不带任何选项和参数,显示当前主机中已启用(活动)的网络接口信息。

直接执行ifconfig命令可以看到eth0和lo两个网络接口信息

注意:CENTOS7之前网卡命名采用eth0、eth1等,而centos7版本采用了一致的网络设备名(Consistent Network Device Naming),该命名是与物理设备本身相关的。

怎么测试centos的下载网速_DNS Linux

eth0对应第一块物理网卡,lo对应为虚拟回环接口。

eth0:第一块物理网卡。eth是ethernet缩写,表示网卡类型为以太网,数字0表示第一块网卡。如有多个物理网卡,第2块为eth1,以此类推

lo:回环网络接口。lo是loopback缩写,并不代表真正的网络接口,而是一个虚拟的网络接口,其ip地址默认是127.0.0.1。回环地址通常仅用于对本机的网络测试。

如果想要查看所有网络接口信息,只需要在ifconfig命令后加上-a选项即可,即ifconfig -a。

1.2 查看指定的网络接口信息

当只需要查看其中一个网络接口信息的时候,可以使用网络接口的名称作为ifconfig命令的参数(不论该网络接口是否处于激活状态)。

例:执行ifconfig ens33命令后可以只查看ens33的配置信息。

怎么测试centos的下载网速_怎么测试centos的下载网速_02

从上述命令显示结果中,可以获知网卡的一些基本信息,

ether:表示网络接口的物理地址(MAC地址),如00:0c:29:e0:40:c8,网络接口的物理地址通常不能更改是网卡在生产时确定的全球唯一的硬件地址。

inet:表示网络接口的ip地址,如192.168.220.220

broadcast:表示网络接口所在的网络的广播地址,如192.168.220.255

netmask:表示网络接口的子网掩码,如255.255.255.0

除此以外,还能够通过TX,RX等信息了解到通过该网络接口发送和接受的数据包个数、流量等更多属性。

2. 使用ip/ethtool命令查看网络接口

ip/ethtool与ifconfig命令相同,也是查看网络接口命令。ip/ethtool命令的功能更强大,它不仅仅可以查看网络接口的基本信息还可以查看更深层的内容,如查看网络接口的数据链路层、网络层信息和网络接口的速率、模式等信息。
其中常有的命令有
ip link :查看网络接口的数据链路层信息。
ipaddress :查看网络接口的网络层信息。
ethtool eth0 :查看指定网络接口的速率,模式等信息。

3. 使用route命令查看路由表条目

Linux系统中路由表决定着从本机向其他主机、其他网络发送数据的去向,是排除网络故障的关键信息。直接执行route命令可以查看当前主机中的路由表信息,在输出结果中,Destination列对应目标网段的地址,Gateway列对应下一跳路由器的地址,Iface列对应发送数据的网络接口。

怎么测试centos的下载网速_Linux教程_03

怎么测试centos的下载网速_Linux教程_04


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

当下一条跳为*时,表示目标网段时与本机直接相连的

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

怎么测试centos的下载网速_怎么测试centos的下载网速_05

4. 使用netstat、ss命令查看网络连接情况

1, netstat命令
netstat命令可以查看当前系统的网络连接状态、路由表、接口统计等信息。是了解网络状态及排除网络服务故障的有效工具。
netstat命令常用选项如下
-a:显示当前主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)
-n:以数字的形式显示相关的主机地址、端口等信息
-r:显示路由表信息
-l : 显示处于监听状态的网络连接设备
-t:查看tcp协议相关信息
-u:查看UDP协议相关的信息
-p:显示与网络相关联的进程号、进程号名称信息(该选项需要root权限)。

通常使用-anpt组合选项,以数字形式显示当前系统中所有的tcp连接信息,同事显示对应的进程信息。结合命令管道使用grep命令,还可以在结果中过滤出所需要的特定记录。
例 执行以下操作可以查看本机中是否有监听tcp80端口(即标准ftp服务)的服务程序,输出信息中心包括PID号和进程名称。

怎么测试centos的下载网速_DNS Linux_06


怎么测试centos的下载网速_linux运维_07


怎么测试centos的下载网速_怎么测试centos的下载网速_08


注意:查看服务状态是否运行有两种方法

第一 ps aux 看进程 更靠谱

第二 netsta t看端口

Apache安装查看进程
安装 Yum -y install httpd
开启
systemctl start httpd
Netstat -ntap | grep httpd  查看tcp
ESTABLISHED正在连接
LISTEN 正在监听
netstat -nuap  查看udp

2、ss命令

ss是Socket Statistics的缩写。顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。

ss快的秘诀在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux 内核中第一手的信息,这就确保了ss的快捷高效。当然,如果你的系统中没有tcp_diag,ss也可以正常运行,只是效率会变得稍慢。(但仍然比 netstat要快。)

并发连接不足上万的时候用natstat查看网络连接情况,当并发上万了可以使用ss命令查看网络连接情况

ss能去访问tcp下的flag模块,tcp_diag是最佳命令

命令格式:

ss [参数]

ss [参数] [ 过滤 ]

命令功能:

-a, --all 所有,显示所有套接字(sockets)

-l, --listening 监听状态信息,显示监听状态的套接字(sockets)

-t, --tcp 显示tcp信息,仅显示 TCP套接字(sockets)

-u, --udp 显示udp信息,仅显示 UCP套接字(sockets)

-n, --numeric 查看端口,不解析服务名称

-p, --processes 看PID进程号 显示使用套接字(socket)的进程

-r, --resolve 解析主机名,直接用名称形式显示 默认是r

怎么测试centos的下载网速_Linux教程_09


怎么测试centos的下载网速_Linux教程_10

5. 查看主机名hostname

怎么测试centos的下载网速_DNS Linux_11


修改主机名

Hostname 主机名 临时修改(关机重启后消失)

Hostnamectl set-hosmname 主机名 永久修改

永久修改指令

怎么测试centos的下载网速_DNS Linux_12

三. 测试网络连接

1.使用ping命令测试网络连通性

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

怎么测试centos的下载网速_Linux教程_13


运行ping命令,若不能获得从目标发挥的反馈数据包,则表示在本机到目标主机之间存在连通性障碍。

若看到 destination host UNreachable 信息,则表示目的主机不可达,可能目标地址不存在或主机已经关闭

若看到network is UNreachable 信息,则表示没有可用的路由信息(如默认网关),无法达到目标主机所在的网络。

当网络中存在影响通信过程稳定性的因素(网卡故障,病毒或网络攻击)时,会看到request timeout 反馈结果,表示与目标主机间的连接超时(数据包响应缓慢或丢失)。当目标主机有严格的防火墙限制时,也可能收到发回的request timeout。

网络排障思路

怎么测试centos的下载网速_linux运维_14

2. 使用traceroute命令跟踪数据包的路由途径

使用traceroute命令可以测试从当前主机到目的主机之间经过了那些网络节点,并显示各中间节点的连接状态(响应时间)。对于无法响应的节点,连接状态将显示为*。

traceroute 是用来发出数据包的主机到目标主机之间所经过的网关的工具。traceroute 的原理是试图以最小的TTL发出探测包来跟踪数据包到达目标主机所经过的网关,然后监听一个来自网关ICMP的应答。发送数据包的大小默认为 38个字节。

traceroute [参数选项] hostname,域名或 IP地址

参数选项:

-i 指定网络接口,对于多个网络接口有用。比如 -i eth1 或-i ppp1等;

-m 把在外发探测试包中所用的最大生存期设置为max-ttl次转发,默认值为30次;

-n 显示IP地址,不查主机名。当DNS不起作用时常用到这个参数;

-p port 探测包使用的基本UDP端口设置为port ,默认值是33434

-q n 在每次设置生存期时,把探测包的个数设置为值n,默认时为3;

-r 绕过正常的路由表,直接发送到网络相连的主机;

-w n 对外发探测包的等待响应时间设置为n秒,默认值为3秒;

怎么测试centos的下载网速_DNS Linux_15

怎么测试centos的下载网速_linux运维_16

3. 使用nslookup命令测试DNS域名解析Name server

当域名解析出现异常时,将无法使用域名的形式访问网络中的web站点、电子邮件系统等服务。

nslookup命令是用来测试域名解析的专用工具,使用时只要指定要解析的目标域名作为参数即可。

例:执行nslookup www.google.com命令后,nslookup程序将提交查询请求,询问站点www.google.com对应的ip地址是多少。

tcp 53用于连接,Udp53 用于解析 。

怎么测试centos的下载网速_Linux_17


域名解析测试 nslookup(Linux和win都能用) dig(linux专属命令)

dig解析域名的方式

怎么测试centos的下载网速_Linux教程_18


设置DNS的三种方法

怎么测试centos的下载网速_怎么测试centos的下载网速_19


DNS配置

方法一 直接写命令 resolv.conf配置文件做域名解析

修改 /etc/resolv.conf nameserver 域名服务器IP

怎么测试centos的下载网速_怎么测试centos的下载网速_20


方法二 vim /etc/sysconfig/network-scripts/ifcfg-ens33

DNS1=8.8.8.8/192.168.195.2(本机网关)

:wq

Systemctl restart network

方法三 直接配置本地解析

vim /etc/hosts

百度的ip地址 www.baidu.com

四、设置网络地址参数

怎么测试centos的下载网速_linux运维_21

4.1 设置网络接口参数 ifconfig

怎么测试centos的下载网速_linux运维_22

怎么测试centos的下载网速_linux运维_23

4.2 设置路由记录route

怎么测试centos的下载网速_DNS Linux_24


怎么测试centos的下载网速_linux运维_25


怎么测试centos的下载网速_怎么测试centos的下载网速_26

五、网络配置文件修改

5.1 网络接口配置文件

/etc/sysconfig/network-scripts/目录下

文件名格式为“ifcfg-xxx”

ifcfg-ens33:第一块以太网卡的配置文件

回环接口lo的配置文件是“ifcfg-lo”

怎么测试centos的下载网速_DNS Linux_27

5.2 启动,禁用网络接口配置

重启network网络服务

怎么测试centos的下载网速_Linux教程_28


禁用,启用网络接口

怎么测试centos的下载网速_DNS Linux_29


怎么测试centos的下载网速_DNS Linux_30


禁掉,不然出问题

怎么测试centos的下载网速_怎么测试centos的下载网速_31

5.3 主机名称配置文件

/etc/sysconfig/network文件 , centos6系统中再这,保存全局网络设置,主要包括主机名信息。
/etc/hostname文件,centos7系统中在这。

5.4 域名解析配置文件

/etc/resolv.conf文件
保存本机需要使用的DNS服务器的IP地址。
对该文件所做的修改会立刻生效。
Linux系统中最多可以指定3个(第三个以后将被忽略)不同的DNS服务器地址,优先使用第一个DNS服务器。

[root@localhost ~]# vim /etc/resolv.conf
search localdomain		'默认的搜索域(域名后缀),即,当访问主机localhost 时,相当于访问 localhost.localdomain'
nameserver 100.100.1.30		
nameserver 100.100.100.30

```![在这里插入图片描述]()![在这里插入图片描述]()
## 5.5 本地主机映射文件
### 5.5.1 /etc/hosts文件
1保存主机名与IP地址的映射记录
一般用来保存经常需要访问的主机的信息
### 5.5.2 hosts文件和DNS服务器的比较
默认情况下,系统首先从hosts文件查找解析记录
当访问一个未知的域名时,先查找该文件中是否有相应的映射记录,如果找不到在去向DNS服务器查询
3.hosts文件只对当前的主机有效
因为hosts文件只保存在本地
4.hosts文件可减少DNS查询过程,从而加快访问速度
在/etc/hosts文件中添加正确的映射记录(经常访问的一些网站),减少了DNS查询,提高了上网速度![在这里插入图片描述]()
# 六、总结
![在这里插入图片描述]()