1.常用网络协议ipv4
ip:32 2进制
11111110.11111110.11111110.11111110 ==254.254.254.254
本次的网络设定一定要在虚拟机里的窗口执行
netmask
网络位表示网络区域
主机位表示网络区域中的某台主机
netmask非0位所对应的ip地址数值为这个ip的网络位
netmask0位对应的ip地址数值为这个ip的主机位
网络位一致主机位不一致的两个ip是可以直接通信的
这样的两台主机叫做直连网络
2.设定ip
方法一:
ifconfig device ip netmask 255.255.255.0
例如:ifconfig eth0 172.25.254.128 netmask 255.255.255.0
这样的设定是临时的,在网络服务重启后失效
systemctl restart network 重启网络
##先用“ifconfig”查看
##更改后的netmask
##重启网络后又变回原来
方法二:
nm-connection-editor 图形的设定ip的方式
nmtui 当系统没有图形时可以用此命令开启网络设定的ui界面
以上两种方法都可以设定ip,只是界面不一样
网络设备设定ip的方式有两种
dhcp 动态获取,ip不固定
static 静态ip为操作者自行设定,ip固定
在此图形工具中选择dhcp为动态网络
在此图形工具中选择manual为静态网络,ip须自行手动输入
方法三:
nmcli (后面的命令如果忘记可以按两下Tab键显示)
nmcli device status eth0 ##显示eth0状态
nmcli device show eth0 ##显示eth0详细信息
nmcli device disconnect eth0 ##关闭erh0网络
nmcli device connect eth0 ##开启eth0网络
nmcli connection down westos(自定义) ##关闭westos网络
nmcli connection up westos ##开启网络
nmcli connection show westos ##显示网络信息
nmcli connection delete westos ##删除网络
nmcli connection add type ethernrt con-name westos ifname eth0 autoconnect yes
##添加动态网络
nmcli connection add type ethernrt con-name westos ifname eth0 ip4 172.25.254.100/24
##添加静态网络
实验步骤:
动态更改为静态
nmcli connection modify westos ipv4.addresses 172.25.254.100/24 ##先给westos这个网络一个地址
nmcli connection modify westos ipv4.method manual ##把这个地址设定为静态(manual)
systemctl restart network ##重启网络
静态更改为动态
nmcli connection modify westos ipv4.method auto ##将westos静态网络更改为动态网络(auto)
systemctl restart network
更改ip
nmcli connection modify westos ipv4.addresses 172.25.254.100/24
systemctl restart network
如果遇到问题就先试一下:systemctl stop NetworkManager.service ##关闭网络管理服务
systemctl start NetworkManager.service ##开始网络管理服务
方法四:
cd /etc/sysconfig/network-scripts/
vim ifcfg-xxxxxx
DEVICE=网卡
ONBOOT=yes
BOOTPROTO=dhcp| none|static
IPADDR=ip
NETMASK=子网掩码 |PREFIX=子网掩码缩写
[NAME=连接名称] (可加可不加)
实验步骤:
动态网络
cd /etc/sysconfig/network-scripts/
vim ifcfg-westos
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
systemctl restart network
静态网络
cd /etc/sysconfig/network-scripts/
vim ifcfg-westos
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.25.254.128
NETMASK=255.255.255.0 | PREFIX=24
systemctl restart network
一个静态网卡设定多个ip
cd /etc/sysconfig/network-scripts/
vim ifcfg-westos
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
IPADDR0=172.25.254.128
PREFIX0=24
IPADDR1=172.25.0.128
PREFIX0=24
systemctl restart network
ip addr show eth0 ##查看两个ip
文件参数文档
/usr/share/doc/initscripts-*/sysconfig.txt
3.gateway 网关
1)路由器
主要功能是用来作nat的
dnat 目的地地址转换
snat 源地址转换
2)网关
路由器上和自己处在同一个网段的那个ip
3)设定网关
systemctl stop NetwrokManager
1.vim /etc/sysconfig/network ##全局网关
GATEWAY=网关ip
systemctl restart netwrok
route -n ##查询网关
提示:要先在真机上查看本机的ip(网关),然后将这个网关设置到虚拟机里
GATEWAY=网关ip
systemctl restart netwrok
route -n ##查询网关
4.dns
1)dns
dns是一台服务器
这台服务器提供了回答客户主机名和ip对应关系的功能
2)设定dns
1.vim /etc/resolv.conf
nameserver 114.114.114.114
systemctl restart network
3)本地解析文件
vim /etc/hosts
ip 主机名称
4)本地解析文件和dns读取的优先级调整
/etc/nsswitch.conf
38 #hosts: db files nisplus nis dns
39 hosts: files dns ##files代表本地解析文件,dns代表dns服务器,那个在前面那个优先
4.设置网关
###在真机里###[kiosk@foundation68 Desktop]$ su - ##切换到超级用户
Password:
Last login: 三 4月 18 15:38:07 CST 2018 on pts/0
先检查一下是否有网关,如果有网关的话需要先删除,以下操作步骤是给真机还原一个初始环境
[root@foundation68 ~]# route -n ##查看网关
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 172.25.254.68 0.0.0.0 UG 425 0 0 br0
172.25.68.0 0.0.0.0 255.255.255.0 U 425 0 0 br0
172.25.254.0 0.0.0.0 255.255.255.0 U 425 0 0 br0
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
[root@foundation68 ~]# vim /etc/sysconfig/network-scripts/ifcfg-br0 ###编辑配置文件删除GATEWAY=XXXXXXX
[root@foundation68 ~]# systemctl restart network ###重启网络
[root@foundation68 ~]# ifconfig ##查看本机的ip也就是这个电脑网关的ip
br0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 172.25.254.68 netmask 255.255.255.0 broadcast 172.25.254.255
inet6 fe80::221:ccff:fec7:d381 prefixlen 64 scopeid 0x20<link>
ether 00:21:cc:c7:d3:81 txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@foundation68 ~]# route -n ###查看一下网关没有了
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.25.20.0 0.0.0.0 255.255.255.0 U 425 0 0 br0
172.25.254.0 0.0.0.0 255.255.255.0 U 425 0 0 br0
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
如果刚开始查看没有上面步骤,接下来查看的网关是连着网(wifi)的ip
[root@foundation68 ~]# route -n ##查看联网后的网关
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.43.1 0.0.0.0 UG 600 0 0 wlp6s0
172.25.68.0 0.0.0.0 255.255.255.0 U 425 0 0 br0
172.25.254.0 0.0.0.0 255.255.255.0 U 425 0 0 br0
192.168.43.0 0.0.0.0 255.255.255.0 U 600 0 0 wlp6s0
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
[root@foundation68 ~]# ping www.baidu.com ##测试一下联的这个网通不通
PING www.a.shifen.com (220.181.112.244) 56(84) bytes of data.
64 bytes from 220.181.112.244: icmp_seq=1 ttl=53 time=59.4 ms
64 bytes from 220.181.112.244: icmp_seq=2 ttl=53 time=42.5 ms
64 bytes from 220.181.112.244: icmp_seq=3 ttl=53 time=37.3 ms
64 bytes from 220.181.112.244: icmp_seq=4 ttl=53 time=47.3 ms
64 bytes from 220.181.112.244: icmp_seq=5 ttl=53 time=86.0 ms
64 bytes from 220.181.112.244: icmp_seq=6 ttl=53 time=40.0 ms
^C
--- www.a.shifen.com ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9013ms
rtt min/avg/max/mdev = 37.397/88.233/435.865/116.727 ms
[root@foundation68 ~]# systemctl start firewalld ##打开防火墙
[root@foundation68 ~]# firewall-cmd --add-masquerade ##允许防火墙伪装IP
success
###在虚拟机里###
vim /etc/sysconfig/network ##输入真机的ip
GATEWAY=172.25.254.68
systemctl restart network ##重启网络
vim /etc/resolv.conf
nameserver 114.114.114.114
ping www.baidu.com ##查看能不能上网
出现上图的话就说明设置网关成功,就可以在虚拟机里上网了
如果出现
以下步骤是排错:
1.真机ping www.baidu.com不能显示联网的话
firewall-cmd --list-all
查看防火墙是否开启,masquerade:yes是开启状态
2.在虚拟主机中看ip 网关 dns的设置有没有错误
3.在真机里ping 网关 如果ping不通就virt-manager删除网卡
4.在真机里vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
sysctl -p ##执行以上操作