linux下的网络配置
ip地址=网络区域地址+网络区域当中主机的地址
一个字节等于八个比特 8bit=1 byte
通过子网掩码可看出子网个数或者地址
172.25.254.0/24 c类地址,表示前24位为网络位,后8位为主机位
172.25.254.0/16 b类地址,表示前16位为网络位,后16位为主机位
172.25.254.0/8 a类地址,表示前8位为网络文,后24位为主机位
网络位相同的两个主机可以进行相互通信
1.什么是IP ADDRESS
internet protocol ADDRESS 网络进程地址
ipv4 internet protocol version 4
ip时有32个0/1位组成
11111110.11111110.11111110.11111110 = 254.254.254.254(通常为了方便用10进制表示)
2.子网掩码
用来划分网络区域
子网掩码非0位对应的ip上的数字表示这个ip的网络位
子网掩码0位对应的数字是ip的主机位
网络位表示网络区域
主机位表示网络区域里某台主机
判断一个ip地址的主机个数:
172.25.254.26/24此处的"/24"便表示的的是子网掩码位数为24,所以它的主机位是8位,那么它便可划分2的8次方个主机,但由于后八位为全1时是广播地址,后八位为全0时是无效地址,所以它的主机个数为256-2=254
3.ip通信判定
网络位一致,主机位不一致的2个ip可以直接通讯
172.25.254.1/24 24=255.255.255.0
172.25.254.2/24
172.25.222.1/24 ##可判断出前两个可以进行通信,后两个因为网络位不同所以不能进行通信
4.网络设定工具
ping ##检测网络是否畅通
ifconfig ##查看
ifconfig 设备名称 ip地址/24 ##设定
ifconfig 设备名称 down ##关闭
ifconfig 设备名称 up ##开机
ip addr ##检测或指定网络接口
ip addr show ##检测
ip addr add ip/24 dev 设备名称 ##添加临时网络接口
ip addr flush eth0 ##刷新ip,(将临时设定的ip地址数据全部清除不显示)
服务端通过向主机ip发送ping命令查看网络是否通畅
查看网络的基本信息,网卡名称,ip地址等
重新设定eth1的ip地址
关闭eth0网卡设备便查询不到其信息
开启eth0网卡便又可以查到为网卡信息
检测网络接口
为eth1再添加一个临时网络接口
执行刷新命令后,刚刚设定的临时ip都不见了
5.图形方式设定
(1)nm-connection-editor
(2)nmtui
两种方式设定ip时 ,NetworkManager服务必须开启(默认情况下系统是自动开启本服务的)
当networkmanager服务未开启时,开启nm-connection-editor后,无法操作
当networkmanager服务未开启时,nmtui都不可以开启
当对ip地址作修改时,修改完的ip地址不会直接显示出来,应重启一下network服务(systemctl restart network)
a.更改ip
b.使用ifconfig命令查看ip,此时ip未及时更新
c.重启之后便可生效
6.命令方式设定网络
nmcli ##NetworkManager必须开启
nmcli device connect eth0 ##启用eth0网卡网络信息服务
nmcli device disconnect eth0 ##关闭eth0网卡网络信息服务
nmcli device show eth0 ##查看网卡信息
nmcli device status show ##查看网卡服务接口信息
nmcli connection show ##查看网卡
nmcli connection down eth0 ##关闭eth0网卡网络信息服务
nmcli connection up eth0 ##开启eth0网卡网络信息服务
nmcli connection delete eth0 ##删除eth0网卡网络信息
nmcli connection add type ethernet con-name eth1 ifname eth1 ip4 172.25.254.226/24
##设置网络类型为ethernet,网络名称为eth1,使用eth1网卡,ipv4的网络地址
为172.25.254.166,子网掩码为24位
nmcli connection modify eth1 ipv4.method auto ##设置网络名称为eth1的网络方式位自动
(自动分配ip地址)
nmcli connection modify eth1 ipv4.method manual ipv4.addresses 172.25.254.188/24
##设置eth1的ipv4网络方式为手动更改eth1的网络ip地址为172.25.254.188,子网掩码为24位
使用nmcli device disconnect eth0 关闭eth1网卡(无法查询到网卡的网络信息)
使用nmcli connection up eth0开启网卡后则可以看到网卡网络的信息
利用nmcli device show eth0查看网卡主要信息
利用nmcli connection show 查看网卡
查看网络服务接口信息
删除eth1网卡的网络信息
设置网络类型为ethernet,网络名称为eth1,使用eth1网卡,ipv4的网络地址
为172.25.254.166,子网掩码为24位(注意:输入的是ip4)
设置网络名称为eth1网络方式为自动(需要重启网络服务生效,原先设置的网络信息都会消失)
这时如果手动设置网络信息的话,则不会生效
设置网络名为eth1的ipv4网络方式为手动更改eth1的网络ip地址为172.25.254.188,子网掩码为24位(当将ipv4的网络方式)
注意:更改网络方式为手动时,需要加上ip地址信息,不然无法修改。
7.管理网络配置目录
/etc/sysconfig/network-scripts/
原网络信息
更改网络名为h1的网络信息配置文件为
DEVICE=eth0 接口使用设备
BOOTPROTO=dhcp 网卡工作模式
ONBOOT =yes 网络服务开启时自动激活
NAME=h1 网络接口名称
更改后的网络信息
8.路由器
(1)作用:网络地址转化(network address transform —>nat)
可解决问题:不同网络位之间主机的相互通信
网关(Gateway):路由器上一个和主机ip地址的网络位相同的ip---->用于路由器与主机的通信
内核具有内核路由功能所以一个路由器中两个位于不同网段的网卡ip可以通信
(2)问题:
一个ip为1.1.1.126想要和ip为172.25.254.250连接通信
a.环境配置:
客户端:设置客户端ip为1.1.1.126
服务端:在主机上virt-manager给服务端主机添加一块网卡
一块网卡设置为1.1.1.226(与客户端链接)
一块网卡设置为172.25.254.226(和客户端欲连接主机通信)
服务端设置
客户端设置
b.网关配置
服务端设置:
sysctl -a |grep ip_forward ##先查看是否开启内核路由功能(默认状态为开启)
vim /etc/sysctl.conf ##如果ip_forward为0则需要修改为1
(net.ipv4.ip_forward=1)
sysctl -p ##重启生效
firewall-cmd --add-masquerade ##给防火墙开启地址伪装功能(临时开启)
编辑 /etc/sysctl.conf
重启服务
给防火墙开启地址伪装功能(注意防火墙需要开启)
客户端设置:两种方式
局部设置网关:
vim /etc/sysconfig/network-scripts/ifcfg-h0 ##h0为网络名,不是网卡名
添加GATEWAY = 服务端路由器的网卡地址 (相同网络段)
如果IPADDR和PREFIX后有数字,则GATEWAY后也应加上数字
全局设置网关:
vim /etc/sysconfig/network
添加GATEWAY = 服务端路由器的网卡地址
两个设置完之后先重启network服务----->systemctl restart network
可用route -n查看是否设置成功网关以及网关地址
可用traceroute 172.25.254.250查看客户端的连接路径
然后使用ping命令查看是否能够连接通信
扩展:
在客户端向主机ssh连接主机,在连接主机上输入w -i查看当前正在使用系统的用户,我们可以发现是由路由器的网关172.25.254.226在访问 ,则可以理解路由器的地址转换
(3)问题:让虚拟机实现上网功能
虚拟机设置:网关设置为主机ip(要记得虚拟机和主机的网络段相同)
主机设置:
sysctl -a |grep ip_forward 先查看是否开启内核路由功能
vim /etc/sysctl.conf 如果ip_forward为0则需要修改为1
(net.ipv4.ip_forward=1)
sysctl -p 重启生效
firewall-cmd --add-masquerade给防火墙开启地址伪装功能(临时开启)
先在主机上ping www.baidu.com查看所对应的ip
再从虚拟机上ping此地址,现在便可以ping通
但在实际条件下,我们访问一个网站不可能知道每个网站的ip,所以这时,引入了域名,便于记忆
9.解析(域名解析成ip地址)需要在虚拟机设置
(1)本地解析
vim /etc/hosts
加入:ip地址 域名
172.25.254.250 www.baidu.com
(2)网络解析(DNS解析)
vim /etc/resolv.conf
加入:
nameserver 218.30.19.50(陕西电信DNS解析服务器)或114.114.114.114(独立的一个解析服务器,三个运营商都可以用)
也可以通过网络配置文件来添加网络解析
vim /etc/sysconfig/network-scripts/ifcfg-eth0
添加DNS1=114.114.114.114
systemctl restart network ##重启网络服务让配置生效
解析默认顺序为:本地解析 > DNS解析
但可以在 /etc/nsswitch.conf更改优先级顺序
本地解析
网络解析
设置完成后,便可通过域名来访问网络
10.PEERDNS
关机网络后dns的设置会还原,网络会重启
初始化脚本 系统所有的参数文件
peerdns 在网络重启时忽略对resolv.conf的设置
实验:
<1>先将设备工作方式改为动态,操作后保存退出重启网络
<2>vim /etc/resolv.conf 输入一个dns的ip,退出保存后cat查看内容
<3>重启 网络后再次查看,刚刚输入的内容被改变
<4>在网络管理配置文件中写入
PEERDNS=no
退出保存后重启网络
<5>vim /etc/resolv.conf 输入一个dns的ip,退出保存后cat查看内容
<6>重启网络后再次查看,内容没有被改变