目录
1. 查看网络配置
1.1 使用 ifconfig 命令进行查看活动的网络接口信息
可以看到这里有三个模块,分别是ens33 lo virbr0
ens33:
s的含义是:热插拔,支持即插即用,不是传统的那种焊死在主板上的网卡
33: 代表网卡的编号
下面部分是网卡的基本信息,ip 地址 子网掩码 网关地址
ipv6的地址 硬件地址
l o :
回环口,相当于是个loopback 口
默认是本机地址,用于提供测试
virbr0 :
虚拟网桥口,保证虚拟机可以通信
查看网卡信息可以用三种命令:
ifconfig
ifconfig 后接网卡名称
ifconfig -a 更加全面 virbr0 virbro-nic 是属于虚拟机的虚拟网卡
虚拟机上的网络基本上是由以下两个进程管理的,这两个进程有时候会冲突,所以一般情况下是关闭虚拟机网络的,关闭父进程
父进程:
子进程:
2.修改网络配置文件
有时候为了测试或者远程xshell链接,设置一个固定的ip地址,避免了每次使用虚拟机的时候要重新链接,浪费时间
配置ip 地址三种方法,图形化更改,临时更改,永久更改
2.1 图形化更改
在linux界面打开网络配置
在这里直接设定好ip地址,跟网卡适配器里面的是同一个网段,可以直接应用,再次在终端里面使用 命令 ifconfig ens33 进行查看,确保已经改变,如果没有改变,重载一下进程 systemctl restart network.service,再查看一下
2.2 临时更改ip地址
临时的改ip地址,临时性的测试,xshell 需要重连,这个操作不影响真正写入配置文件里面的地址,重启之后就失效
2.2.1 命令输入ip地址,进行更改
注意的是后面要加子网掩码 /24 或者 255.255.255.0
2.2.2 临时更改,配置虚拟网卡
当只存在一块网卡的时候,又想进行测试,企图想用多个地址,无法增加网卡的情况下 ,可以虚拟出一个网卡 ens33: 0
(凡是在命令行输入的命令,是临时性的)
禁用虚拟网卡,直接把这个网卡down掉即可
启用ens33 禁用ens33 的命令
ifconfig ens33 up ifconfig ens33 down
或者是 ifup ens33 ifdown ens33 也能达到相同的效果
2.2.3 永久更改,配置固定ip地址
至于为什么down掉了ens33网卡的消息不会消失,因为是写入在配置文件里面的,来看一下ip地址配置文件,里面有诸多网卡相关的信息跟配置文件,这里就可以进行永久的更改ip地址,下次登录系统地址不变,进入配置文件:
/etc/sysconfig/network-scripts
进入文件,可以进行编辑
打开内容如下,里面是关于网卡的配置信息:
各个属性的含义:
TYPE=Ethernet //网卡类型,以太网卡
PROXY_METHOD=none//代理方式,关闭状态
BROWSER_ONLY=no //只是浏览器,否
BOOTPROTO=dhcp //协议,none 不指定,一般是static 静态或者dhcp 动态获取
DEFROUTE=yes //默认路由,是
IPV4_FAILURE_FATAL=no//是否开启IPV4致命错误检测:否
IPV6INIT=yes//IPV6是否自动初始化: 是
IPV6_AUTOCONF=yes//IPV6是否自动配置:是
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy //IPV6地址生成模型
stable-privacy是一种生成IPV6的策略
NAME=ens33 //网卡名称
UUID=26cb3d86-d182-401e-9cf8-3d0450f222b8//热备的标识,跟MAC地址一样,具有唯一性
DEVICE=ens33 //网卡设备名称
ONBOOT=no //是否激活网卡
如果需要自己配置IP地址,在文件里面再加入以下内容
IPADDR=192.168.152.130//ip地址(static设置)
NETMASK=255.255.255.0//子网掩码
GATEWAY=192.168.152.2//网关,不可与自己网关本机的网关进行冲突
DNS1=114.114.114.114//dns地址解析
DNS2=8.8.8.8//dns地址解析
之后保存退出,在虚拟机中重启服务
systemctl restart network.service
查看状态:
systemctl staus network
3. 测试网络连接(添加网卡实验)
3.1 测试网络连接的命令
3.1.1 ping 命令
默认1秒ping一次
如果想指定ping的次数 ping -c 2 后接ip地址或者域名
指定ping 的超时时间 ping -w 10
指定ping的ping包的间隔时间 ping -i 5
ping的目标 ttl 值得关注下 time
3.1.2 traceroute命令
比ping 更加高级
traceroute 路由追踪,可用来查看数据包在提交到远程系统或者网站时候所经过的路由器的 IP 地址、跳数和响应时间
内网里面可以结合ping一起使用
出现* 就是不让追踪
主机不可达
超时 可能是防火墙阻挡
可以试着Ping一下本地回环地址127.0.0.1,判断网关是好的,说明协议是没问题的,一二层是没问题的,可以看看路由
3.1.3 hostname命令
临时生效:
hostname 显示和设置主机名
默认是显示主机名
设置主机名:hostname 主机名
永久生效:
进入配置文件vim /etc/hostname //修改hostname为期望值;保存后退出
命令行输入hostnamectl set-hostname Brace //永久设置用户名,关机后不失效
3.1.4 netstat命令
netstat命令:查看系统的网络连接状态、路由表、接口统计,查看服务的端口等信息,一般用来查看,监听端口的状态是否正常
netstat 跟ps 差不多,一般结合起来使用
选项 | 作用 |
---|---|
-a | 查看所有信息 |
-n | 以数字形式显示 |
-p | 显示pid |
-t | 查看tcp协议连接 |
-u | 查看udp协议连接 |
-r | 查看路由表 |
-l | 只查看监听(listen状态) 连接 |
3.1.5 ss命令
ss命令:查看系统的网络连接情况,获取socket统计信息,-般用于并发上万的场景下
选项 | 作用 |
---|---|
-t | 显示tcp连接 |
-u | 显示udp连接 |
-n | 数字形式显示,而不是用主机名或域名 |
-l | 查看所有监听着的连接 |
-p | 显示pid |
-a | 查看所有连接 |
-r | 解析服务名称 |
3.2 实验操作验证网络连接
这里结合做一个实验,加一块网卡,进行主机ping虚拟机之间的地址,能ping通就表示成功,下面是实验步骤:
打开自己本机网络设置,可以看到有如下配置:
虚拟机里面设置
本机查看是否存在网卡信息
在虚拟机菜单栏编辑选项下面选择 虚拟网络编辑器,可以查看到有几类网络连接模式:
桥接
相当于在网络中虚拟一个真实的主机,和主机共享一 个网络,同一个网络当中的机器可以互相ping通虚拟机,
仅主机
只能真机与虚拟机之间互通,或者虚拟机跟虚拟机之间互通,处于同一个网段之内的
NAT
可以上网,虚拟机之间可互通,真机和虚拟机可互通,网络上的机器ping不了虚拟机
这个不需要更改,默认的
之前加了一块网卡,重启服务,输入ifconfig命令知道新加的网卡的名称是ens37,我重启的时候然后出现了这个问题
出现这种现象的原因是在什么也没有输入的情况下连续按两次tab键。
出现Display all 1710 possibilities? (y or n)之后,只要按n就会返回命令行了,对系统或其他进程不会产生任何影响。
然后进入配置文件 /etc/sysconfig/network-scripts/ifcfg-ens37
写入基本配置内容,然后保存退出即可
切换到主机,cmd 打开命令提示符 ping 虚拟机的地址,看到结果是成功的
注意:如果不能ping成功,考虑以下几个方面
- 虚拟机的网卡选择是否正确,模式是否选择的正确
- 网卡配置是否正确,查看网关(注意不跟主机网关冲突)
- 把主机跟虚拟机上的防火墙关闭
4.使用网络配置命令
4.1 设置路由记录-route
linux 可以被看做路由器使用,linux服务器不是路由器,但是存在路由表
route 查看本机的路由表,结合下面route -n 一起对比一下
U 路由是活动的
UG 默认的路由
route命令:
选项 | 作用 |
---|---|
add | 添加一条路由规则 |
del | 删除一条路由规则 |
-net | 目的地址是一个网络 |
-host | 目的地址是一个主机 |
target | 目的网络或主机 |
netmask | 目的地址的网络掩码 |
gw | 路由数据包通过的网关 |
dev | 为路由指定的网络接口 |
route -n
ip route 或者 ip route show
知道了路由表就可以做静态路由,默认路由
route add 指定目标网段 下一跳(网关地址)
route add -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.245.2
主机路由是路由选择表中指向单个IP地址或主机名的路由记录。主机路由的Flags字段为H。例如,本地主机通过IP地址192.168.1.1的路由器到达IP地址为10.0.0.10的主机。
route add -host 10.20.30.148 gw 10.20.30.40
#添加到10.20.30.148的网管
网络路由是代表主机可以到达的网络。网络路由的Flags字段为N。例如,在下面的示例中,本地主机将发送到网络192.19.12的数据包转发到IP地址为192.168.1.1的路由器。
route add -net 10.20.30.40 netmask 255.255.255.248 eth0
#添加10.20.30.40的网络
route add -net 10.20.30.48 netmask 255.255.255.248 gw 10.20.30.41
#添加10.20.30.48的网络
指定从哪个网卡接口
route add- host 192. 168. 4. 1 gw 192. 168. 245. 2 ens33
默认路由
route add default gW 192. 168. 245.22.
删除
route del -net 192.168.2.0/24
4.2 设置网络接口参数-ifconfig
ifconfig命令可以用于查看、显示和配置、激活或关闭网络接口,例如设置IP地址、掩码、MAC地址、广播地址、网关、激活或关闭网络接口,ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数
用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件:/etc/sysconfig/network-scrips/ifcfg-ens33