IP的基础知识
1.什么是IP(网络之间互连的协议)?
IP(是internet protocol的缩写)就是为计算机网络相互连接进行通信而设计的协议,在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。IP地址具有唯一性
2.IP的基本格式
如今的IP网络使用32位地址,以点分十进制表示,如172.25.0.10。
地址格式为:IP地址=网络地址+主机地址或 IP地址=网络地址+子网地址+主机地址。
3.什么是子网掩码
子网掩码(subnet mask):主要用于标明子网是如何划分的,即地址的哪一部分是包含子网的网络号,哪一部分是网络中的主机号。掩码与IP地址一样,由32位组成,用点分十进制数来描述。IP地址网络部分对应的掩码部分全为“1”,主机部分对应的掩码全为“0”。
配置IP的方法:
1:图形界面,命令如下:
nm-connection-editor
2:文本化图形,命令如下:
nmtui
3.命令(ifconfig)
ifconfig是linux中用于显示或配置网络设备(网络接口卡)的命令,英文全称是network
interfaces configuring。配置网卡的IP地址语法例:ifconfig eth0 192.168.0.1 netmask 255.255.255.0。执行命令后,结果如下:
nmcli connection add type ethernet con-name westos ifname eth0 autoconnect yes #添加dhcp网络
nmcli connection add type ethernet con-name westos ifname eth0 ip4 ip/24 #添加静态网络
nmcli connection delete eth0 #删除westos连接
nmcli connection show #显示所有网络连接
nmcli connection down eth0 #关闭指定连接
nmcli connection up eth0 #开启指定连接
nmcli connection modify "westos" ipv4.addresses newip/24 #改变wetos的ip
nmcli connection modify "westos" ipv4.method <auto|manual> #改变westos的工作方式为动态或者静态
nmcli device connect eth0 #开启设备
nmcli device disconnect eth0 #关闭设备
nmcli device show #显示设备信息
nmcli device status #显示设备状态
管理网络配置文件
网络配置目录
/etc/sysconfig/network-scripts/
网络配置文件的命名规则
ifcfg-xxx
DEVICE=xxx ###设备名称
BOOTPROTO=dhcp|static|none ###设备工作方式
ONBOOT=yes ###网络服务开启时自动激活网卡
IPADDR= ###IP地址
PREFIX=24 ###子网掩码
NETMASK=255.255.255.0 ###子网掩码
NAME= ###接口名称
静态网络设定文件
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=172.25.254.217
NETMASK=255.255.255.0
BOOTPROTO=NONE
systemctl restart network
一块网卡上配置多个IP,用到的命令为
vim /etc/sysconfig/network-scripts/ifcfg-eth0
网关(gateway)
网关(Gateway)又称网间连接器、协议转换器。默认网关在网络层上以实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关的结构也和路由器类似,不同的是互连层。网关既可以用于广域网互连,也可以用于局域网互连。网关实质上是一个网络通向其他网络的IP地址,所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信
1.把真实主机变成路由器
【libvirt是提供了一个方便的方式来管理虚拟机和其他虚拟化功能的软件的集合,如存储和网络接口管理。这些软件包括一个API库,一个守护进程(Libvirtd),和一个命令行实用程序(virsh)。】
systemctl stop libvirtd
systemctl restart libvirtd
systemctl start libvirtd
firewall-cmd --list-all
firewall-cmd --permanent --add-masquerade
firewall-cmd --reload
firewall-cmd --list-all
public (default, active)
interfaces: br0 enp0s25 wlp3s0
sources:
services: dhcpv6-client ssh
ports:
masquerade: yes <地址伪装功能开启,真实主机变成路由器>
forward-ports:
icmp-blocks:
rich rules:
2.设定虚拟机网关
vim /etc/sysconfig/network###全局网关,针对所有没有设定网关的网卡生效
GATEWAY=172.25.254.250
vim /etc/sysconfig/network-scripts/ifcfg-eth0
GATEWAY0=172.25.254.250 ##当网卡中设定的IP有多个时,指定对于哪个IP生效
GATEWAY=172.25.254.250 ##当网卡中设定的IP只有一个时
DNS(域名服务器地址)
域名服务器地址(DNS):仅仅正确设置了IP地址和网关地址,只能保证用户通过IP地址和其他主机进行通信。为了能够使用更为简易的主机域名进行通信,需要指定知道一个DNS服务器的IP地址。所有的域名解析任务都会通过指定的DNS服务器来完成
vim /etc/hosts ##本地解析文件
ip 域名
61.135.169.121 www.baidu.com
vim /etc/resolv.conf ##dns的指向文件
nameserver 114.114.114.114 ##当需要某个域名的IP地址时去问114.114.114.114
vim /etc/sysconfig/network-scripts/ifcfg-xxxx
DNS1=114.114.114.114
注意 :
当网络工作为dhcp时,系统会自动获得ip 网关 dns,那么/etc/resolv.conf会获得到的信息修改,如果不需要获得dns信息,在网卡配置文件中加入 PREEBNS=no
##设定解析的优先级
设定解析的优先级
系统默认:
/etc/hosts >/etc/resolv.conf
vim /etc/nsswiitch.conf
39 hosts: file dns ##/etc/hosts优先
vim /etc/nsswiitch.conf
39 hosts: dns file ##/etc/resolv.conf dns指向优先