Linux 下的网络配置

1 .IP

IP internet protocol ADDRESS 是网络进程地址

ipv4 internet protocol version 4

ip是由32个01组成
11111110.11111110.11111110.11111110 = 254.254.254.254

1个IP 有4个字节

2. 子网掩码

  • 用来划分网络区域
  • 子网掩码非0的位对应的ip上的数字表示这个ip的网络位
  • 子网掩码0位对应的数字是ip的主机位
  • 网络位表示网络区域
  • 主机位表示网络区域里某台主机

3. ip通信判定

网络位一致,主机位不一致的2个IP可以直接通讯。
172.25.254.1/24 其中24=255.255.255.0
172.25.254.2/24 其中172.25.254 表示的是网络位,1和2为主机位,两台主机可以直接通信。
172.25.0.1/16

4. 网络设定工具

4.1 Ping 检测网络是否通畅

命令含义
ping ip检测网络是否通畅
ping -c 1 ipping 1 次
ping -w 1 ip等待1秒
ping -c 1 -w 1 ipping1次等待1秒

在这里插入图片描述
如图所示,在加参数 -c 和 -w 时, ping 命令会根据最小的设定而结束;在图中 ping -c 1 -w 2 192.168.122.1 时,会默认只 ping 一次等待一秒;在图中 ping -c 2 -w 1 192.168.122.1 时,会默认只 ping 一次等待一秒。

4.2 ifconfig

命令含义
ifconfig查看
ifconfig device ip/24设定
ifconfig device down关闭
ifconfig device up开启

4.3 ip addr

当一块网卡需要和不同网段的设备连接时,就需要设定多个不同网段的IP,此时 IP 的设定必须用到 ip addr 命令,ifconfig 命令不可以设置多个IP。

命令含义
ip addr检测或指定网络接口
ip addr show检测
ip addr add ip/24 dev device设定(或者添加)
ip addr del dev device ip/24删除

注意: ip device的名字一个物理事实,看到什么命字只能用什么命字。

如输入命令 ip addr add 192.168.6.100/24 dev ens3 表示把192网段的这个 IP 给ens3 这个设备。
如再输入命令 ip addr add 172.25.254.250/24 dev ens3 表示把172网段这个 IP 也ens3 这个设备。

  1. ip 查看
    又上面的内容可以,对于ip 的查看可以用到 ifconfig 和 ip addr 命令,具体查看效果如图所示;

当输入 ifconfig 命令时会默认查看系统所有的网卡信息,当输入 ifconfig ens3 时表示只查看 ens3 网卡信息;
在这里插入图片描述
当输入命令 ip addr show时,会默认显示系统中所有网卡的信息,当输入 ip addr show ens3 时只会显示指定网卡的信息。

在这里插入图片描述

  1. 用 ifconfig 和 ip addr 的方式设置 ip

ifconfig

当输入命令 ifconfig ens3 172.25.254.100 netmask 255.255.255.0, 表示将172 网段这个ip 设置为 ens3 这个网卡,网络位前三个字节,主机位为最后一个字节。

在这里插入图片描述
在设定完ip 之后,重启网卡之后,看到 ip 虽然已经更改,但是和同网络位的其他主机之间不通;说明 ifconfig 在设定 ip 时网卡不能被占用,也就是这个网卡不能有配置文件,有配置文件说明网卡已经被控制了;此时用命令 nm-connection-editor 将其已有的配置文件删除,删除后效果如下;
在这里插入图片描述
当删除配置文件之后,再次设定 ip ,此时和同网络位的其他主机之间的网络是相通的;
在这里插入图片描述
输入命令 ifconfig ens3 down 会把当前设置关闭,再次输入 ifconfig up ens3 会再次开启之前的设定,可用查看网卡信息的方式查看;

在这里插入图片描述

但是当输入 nmcli connection down ens3 时关闭,当用 nmcli connection up ens3 时,就不能打开网卡;此时查看网卡信息,之前设置的 ip 已经被删除。

在这里插入图片描述

ip addr

在上述 ens3 网卡上没有 ip 时可以为其设置一个 ip ,如图所示,输入命令 ip addr add 172.25.254.100/24 dev ens3 ,设置完毕之后可以用 ip addr show 或者其他的方式查看设置的 ip ; 如图 ping 同网络位的其他主机是通的说明设定已经成功;
在这里插入图片描述

输入命令 ip addr add 192.168.122.100/24 dev ens3 ,再为该网卡添加一个其他网络位的 ip ,并且结果显示,设定已经成功;

在这里插入图片描述
如果刚才的主机位设置有错误,我们可以用命令 ip addr del 192.168.122.100/24 dev ens3 来删除刚才添加的网络,此时用 ip addr show ens3 查看时,这个网段已经被删除;

在这里插入图片描述
如果输入命令 nmcli connection down ens3 ,会将网卡上的 ip 信息全部删除。

在这里插入图片描述

以上结果说明, ifconfig 和 ip addr 的方法设定的 ip 都是临时的,不会对配置文件做修改。

5. 图形方式设定ip

在设定之前要保证系统开启一个服务 NetworkManager,如果不开启,以下设定会有问题。

输入命令 systemctl status NetworkManager 来查看这个服务的状态;此时看到的是服务开启的状态。

在这里插入图片描述
当服务关闭时的状态如下图所示,此时一些命令便不能被系统识别;

在这里插入图片描述
在服务关闭时,输入 nm-connection-editor 会打开网络编辑窗口,但此时所有的网卡不在显示,不能进行编辑。

在这里插入图片描述

所以在设定 ip 时一定要保证次服务开启。
在设定 ip 时,最好不要用远程主机连接的方式来设定,当网络出现异常时,做起来就会有更多的问题。

5.1 用图形的方式设定 ip

在超级用户下输入命令 nm-connection-editor 打开图形编辑器,把之前的网络先给剪掉,然后点加号添加一个新的网络;

在这里插入图片描述
选择添加网络的类型,此处选择 因特网;

在这里插入图片描述
设置设备的名字,此处设置的名字为任意设置,为了区分于其他的网卡,此处设置名字和所选择的网卡名字一样;

在这里插入图片描述
在 IPV4 界面中设置方式为 Manual ,设置网络 ip 172.25.254.200,网络位设置为24,点击 save 保存,并退出。

在这里插入图片描述

以上设置完成后不会立即生效,输入命令 nmcli connection reload 加载一次,然后输入 nmcli connection down enp1s0 关闭网卡,此处的名称为设置的名称,不一定是网卡的名字,如故不确定是那个可以按两次 Tab 键,看补齐的东西有哪些再做选择;然后输入 nmcli connection up enp1s0 再开启网卡;此时修改的信息已经成功加载。

在这里插入图片描述

5.2 nmtui 没有图形的字符文本下的 IP 更改

上面的方式时在图形下用鼠标点击的方式来做修改,下面这种方式被成为没有图形的字符文本更改 ip .

输入命令 nmtui ,即可打开如下图所示的窗口,通过上下左右键来选择要设置的信息内容;此处选择 Edit a connection 直接回车,表示编辑一个网络连接;

在这里插入图片描述
用上下左右键来选择,先 用Delete 删除当前的网络,再选择Add 添加一个新的网络;

在这里插入图片描述

在选择添加之后,输入需要设置的信息如下,此处选择 ens3 的网卡,并设置名称为 ens3 ,添加两个网段的 ip ,分别为 192.168.122.100 和 172.25.254.100;并设置网关和DNS 等信息,此处网关可以和之前设置一样,先不做设置;然后点击ok ,退出当前的页面;返回到上一个页面选择Back 返回;回到第一个界面选择Quit 退出,设定完毕。
在这里插入图片描述
同图形的设定基本一样,接下来输入命令 nmcli connection reload 加载一次,然后输入 nmcli connection down ens3 关闭网卡;然后输入 nmcli connection up ens3 再开启网卡;此时修改的信息已经成功加载。
在这里插入图片描述

6. 命令方式设定网络

上述提到的命令的方法 ifconfig 和 ip addr 的方法设置的 ip 都是临时设定;此处的 nmcli 命令对于 ip 的修改则是永久的,用 nmcli 做的修改其实是对配置文件的内容做的修改;用nmcli 做修改时 NetworkManager 服务也必须开启。

6.1 nmcli device

命令含义
nmcli device connect ens160启用ens160网卡
nmcli device disconnect ens160关闭ens160网卡
nmcli device show ens160查看网卡信息
nmcli device status ens160查看网卡服务接口信息

注: 此处的 ens160 是根据网卡名字,而不是自己设置的名字,如果在输入命令忘记网卡的名字,可以按Tab 来补齐。

输入命令 nmcli device 用Tab 键补齐出来的内容如图所示;
输入命令 nmcli device show 来显示所有网卡的信息;

在这里插入图片描述
输入命令nmcli device status 查看所有网卡服务接口信息;
输入命令nmcli device disconnect ens3 来关闭 ens3 网卡接口;
输入命令nmcli device status 查看所有网卡服务接口信息,看ens3 网卡接口是否已经关闭;
输入命令nmcli device connect ens3 来开启 ens3 网卡接口;
输入命令nmcli device status 查看所有网卡服务接口信息,看ens3 网卡接口是否已经开启;

在这里插入图片描述

6.1 nmcli connection

命令含义
nmcli connection show查看连接
nmcli connection down westos关闭连接
nmcli connection up westos开启连接
nmcli connection delete westos删除连接
nmcli connection add type ethernet con-name westos ifname ens160 ip4 172.25.254.100/24添加连接
nmcli connection add type ethernet con-name westos ifname ens160 ip4 172.25.254.100/24更改

注: 此处的 westos 为自己设置的名字,而不是网卡的名字,如果在输入命令忘记设置的名字,可以按Tab 来补齐。

输入命令 nmcli connection ,用Tab 来补齐,可以看到 nmcli connection 可以跟的内容有哪些;
输入命令 nmcli connection show 可以看到当前网卡的状态;
输入命令 nmcli connection down ens3 关闭 ens3 网卡的连接;
输入命令 nmcli connection show 可以看到当前网卡的状态;
输入命令 nmcli connection up ens3 开启 ens3 网卡的连接;
输入命令 nmcli connection show 可以看到当前网卡的状态;

在这里插入图片描述

输入命令 nmcli connection delete ens3 删除 ens3 网卡的连接;
输入命令 ifconfig 查看网卡的配置信息;

在这里插入图片描述

输入命令 nmcli connection add type ethernet con-name ens3 ifname ens3 ipv4.method manual ipv4.addresses 192.168.122.100/24 得到如图所示的信息;此次添加是给 ens3 网卡重新配置了新的 ens3 的名称,新的名称有新的 ip 为 192.168.122.100。

在这里插入图片描述
但是之前名称为 ens3的还存在;这就造成有两个名称为ens3 ,在再次开启时有时会出现错乱;在给一个网卡添加连接时,要用不同的名字区分开来。

在这里插入图片描述

输入命令 nmcli connection modify ens3 ipv4.addresses 172.25.254.100,在更改完成之后不会立即生效;

在这里插入图片描述
此时输入命令 nmcli connection reload ens3 重新加载网卡;
输入命令 nmcli connection down ens3 关闭 ens3 网卡;
输入命令 nmcli connection up ens3 开启 ens3 网卡;
此时再查看时修改的信息已经加载出来了。

在这里插入图片描述

7. 管理网络配置文件

网络配置的目录 /etc/sysconfig/network-scripts/ ,其实前面图形的修改也是修改的这个目录下的文件。

当只删除这个文件时,网卡在中的还在,需要nmcli connection reload 一下。reload 之后用nm-connection-editor 打开的就没有了。

网络配置文件的名命规则
ifcfg-xxxx 此处xxxx 表示设置的名称

字符含义
DEVICE=xxx设备名称(网卡)
BOOTPROTO=dhcp(static)(none)设备工作方式(none 、和static 是网卡设定时手动指定,dhcp 是自动)
ONBOOT=yes网络服务开启时自动激活网卡
IPADDR=IP地址
PREFIX=24子网掩码
NETMASK=255.255.255.0子网掩码
NAME=接口名称

:两个子网掩码的意思相同,写一个就可以。

7.1 dhcp 动态网络设定

  • 编辑配置文件 /etc/sysconfig/network-scripts/ifcfg-ens160 ,此处以 ifconfig-ens160为例;编写内容如下:
    DEVICE=ens160
    ONBOOT=yes
    BOOTPROTO=dhcp

  • systemctl restart network 重启网络,此时如果一个网络段的用户没有开启 dhcpd 服务,则再次开启网络会失败;如果一个网段中有其他用户提供 dhcpd 服务,则根据 dhcpd 的设置服务规则即可获得 ip 等信息。

7.2 静态网络设定

  1. 配置一个Ip
  • 编辑配置文件 /etc/sysconfig/network-scripts/ifcfg-westos ,文件内容如下:表示对 ens3 网卡在静态网络下配置 ip 为192.168.122.100 ,子网掩码为 255.255.255.0,接口名称为 westos;

在这里插入图片描述

  • 输入命令 nmcli connection reload 重新加载;
  • 输入命令 nmcli connection down westos 关闭连接;
  • 输入命令 nmcli connection up westos 开启连接;
  • 输入命令 ip addr show 显示当前网卡的信息

在这里插入图片描述

  1. 一个网卡上配置多个 ip
  • 编辑配置文件 /etc/sysconfig/network-scripts/ifcfg-westos ,文件内容如下:表示对 ens3 网卡在静态网络下配置两个 ip ,第一个为192.168.122.100 ,第二为 172.25.254.100 ;第一个子网掩码为 255.255.255.0,第二个子网掩码为24 ,此处的24 和255.255.255.0 的意思是一样的;接口名称为 westos;

在这里插入图片描述

  • 输入命令 nmcli connection reload 重新加载;
  • 输入命令 nmcli connection down westos 关闭连接;
  • 输入命令 nmcli connection up westos 开启连接;
  • 输入命令 ip addr show 显示当前网卡的信息

在这里插入图片描述

  1. 网卡配置文件的帮助查看
    /usr/share/doc/initscripts/ sysconfig.txt 里面的文件有说明对其用法的详解。

8. lo回环接口

负责本机的服务和服务之间的沟通
回环接口------人的神经----127.0.0.1-----localhost

如图为用 ifconfig 命令查看到的 lo 接口详细信息。
在这里插入图片描述

9. 网关 GATEWAY

前面提到的两台主机之间的通信,是在两台主机在相同的网络位情况下;那么当我们的主机想要访问其他网段的主机时,就需要配置网关,网关的意思是,接收到相同网络端主机的请求,对它进行包装,然后让其可以访问不同网络位的主机。

9. 1 把双网卡主机变成路由器

现实生活中,网关大部分是由路由器实现其作用;在此次实验中,用到的是真实主机和虚拟机,真实主机是可以联网的;那么虚拟机要联网可以将真实主机的 ip 设置为自己的网关,此时在真实主机中网卡一定要有路由器的功能。

在真实主机中用超级用户的身份

  • 输入命令 systemctl start firewalld ,开启火墙;
  • 输入命令 firewall-cmd --list 查看火墙列表;
  • 输入命令 firewall-cmd --permanent --add-masquerade 为其添加地址伪装功能;
  • 输入命令 firewall-cmd --reload 重新加载;
  • 输入命令 firewall-cmd --list-all 显示所有的列表;

在这里插入图片描述
如图所示当出现 masquerade: yes 表示地址伪装功能开启,真实主机变成路由器。

临时设定网关

输入命令 ip route add default via 1.1.1.200 表示将 1.1.1.200 这个网关设定给当前的网卡;

输入命令 ip route del default via 1.1.1.200 表示将 1.1.1.200 手动临时删除设定。

  • 输入命令 route -n 来查看当前主机上是否已经设置了网关;
  • 输入命令 ip route add default via 192.168.122.1 ,把192.168.122.1 这个 ip 设定为当前网卡的网关;
  • 此时不仅可以连接相同网络位的主机,还可以连接不同网络位的主机;如下图所示:

在这里插入图片描述
当输入 nmcli connection down westos ;再输入 nmcli connection up westos 时,再次查看网关设定,会发现之前设置的网关已经没有了,这就说明用命令的方法设置网关是临时的。

在这里插入图片描述

9.2 设定单网卡主机的网关

以上的设定办法是临时的,那么对于配置文件修改的设定则是永久的设定。

  1. 全局网关设定,针对所有没有设定网关的网卡生效
  • 编辑配置文件 /etc/sysconfig/network ,输入内容如下;

在这里插入图片描述

  • 输入命令 nmcli connection reload 让其重新加载;
  • 输入命令 nmcli connection down westos 让其关闭;
  • 输入命令 nmcli connection up westos 让其开启;

如图所示可以用命令 route -n 来查看网关是否设定成功;此处最后的设置是成功的, 网关为 192.168.122.1,此为真实主机的 ip 。

在这里插入图片描述

  1. 指定网卡的网关配置
  • 编辑配置文件 /etc/sysconfig/network-scripts/ifcfg-westos;

在这里插入图片描述

  • 输入命令 nmcli connection reload 让其重新加载;
  • 输入命令 nmcli connection down westos 让其关闭;
  • 输入命令 nmcli connection up westos 让其开启;
  • 再输入 route -n 来查看网关设置是否已经成功;

在这里插入图片描述

1)对于指定网卡网关配置时,要根据网卡中添加的 ip 数量来设置网关;当网卡中有两个或两个以上的 ip 时,设置网关时应该根据 IPADDR 后面加的数字一致;如设置的是 IPADDR0,则网关设定 GATEWAY0=192.168.122.1 ;当只有一个 ip 时就不用加数字。

2)如果对于配置文件中 /etc/sysconfig/network-scripts/ifcfg-westos网关的删除时,虽然把配置文件中的网关删除,但是还不起作用。此时只有重启网络网关才会没有设定的网关,但是在实际工作中,如要重启网络,正在浏览的网页会关闭;那么就需要手动删除,输入命令 ip route del default via192.168.122.1. 此时就不显示了,但是网还可以继续使用。

10. 设定dns

在网关设定之后,使用起来还是不够方便,只能用 ip ,那么ip 和域名之间怎么转换呢,那么我们就需要地址解析。

地址解析

  • 系统操作者对字符敏感

  • 系统网络通信需要通过ip地址这个数字

  • 当操作着输入网址 www.baidu.com, 这个网址不是一个可以通信的IP地址

  • 于是必须要在系统中把www.baidu.com变成百度服务器的IP地址

  • 这样的过程叫做地址解析

    domain name server == 域名解析服务

在这里插入图片描述如图所示,当系统中没有配置地址解析服务时,用ip 的方式可以连接成功,但是用域名的方式就不能成功。

10.1 本地解析文件

  • 编辑配置文件 /etc/hosts,此文件中直接提供地址解析;
    在配置文件中写入 14.215.177.39 www.baidu.com ,表示会将地址 www.baidu.con 的域名解析为 14.215.177.39,连接上网。

如图所示在编写成功之后,会立即生效。

在这里插入图片描述

10.2 dns的指向文件

以上的方法提供地址解析服务虽然可行,但是访问别的域名时又会出现同样的问题,那么一一配置就显得很麻烦。那么可以用 dns 直接为所有的域名提供解析服务。

  • 编辑配置文件 /etc/resolv.conf ;
    在配置文件中写入 nameserver 114.114.114.114 ,表示将 114.114.114.114 作为提供地址解析的服务,在访问其他域名时,如果本地解析中没有提供地址解析服务,则去访问 114.114.114.114 ,会提供地址解析服务。
    此处的114.114.114.114 为一个常用的地址解析 ip,当然年还会有其他的提供地址解析服务的 ip 。

在这里插入图片描述如图在做好 dns 之后,访问其他域名时就可以了。

10.3 网卡解析文件

除了以上编辑系统级的文件之外,还可以在编辑网卡配置文件信息时就指定地址解析服务。

  • 编辑网卡配置文件 /etc/sysconfig/network-scripts/ifcfg-westos ;
  • 输入命令 nmcli connection reload 重新加载;
  • 输入命令 nmcli connection down westos 关闭网卡;
  • 输入命令 nmcli connection up westos 开启网卡;

在这里插入图片描述
编辑配置文件时如图所示,设定的 DNS1 = 1.1.1.1 ,表示地址解析服务 ip 为 1.1.1.1 ,此处是为了实验效果,不确保 1.1.1.1 会提供地址解析服务。
当重新加载网卡配置文件之后,dns的指向文件 /etc/resolv.conf 会根据网卡配置文件的内容而更新。
如果不让 指向文件随配置文件的重新加载而更改,可以在配置文件中加一行内容 PEERDNS = no,在重启网络时便不会更改。

:在网卡配置文件中设置地址解析服务时 DSN 只有 0 和 1 两个级别,数字一定要写。

对于网卡配置文件中参数的查看可以在该 /usr/share/doc/initscripts/
目录下查看内容。

以上地址解析设定成功之后,如何得知地址解析服务是那个提供的。如要查询 www.qq.com ,可以通过输入命令 dig www.qq.com 查看域名与 ip 之间的转换是谁提供的。

如图所示,该服务时由 114.114.114.114 提供的地址解析服务。
在这里插入图片描述
以上的设置是在静态网络下设定的,那么如果是动态就需要以下的操作设定。

网络工作模式为 dhcp

  • 编辑网卡配置文件 /etc/sysconfig/network-scripts/ifcfg-westos ;将网络模式修改为 dhcp 动态;其他信息如图中所示;
  • 输入命令 nmcli connection reload 重新加载;
  • 输入命令 nmcli connection down westos 关闭网卡;
  • 输入命令 nmcli connection up westos 开启网卡;
    在这里插入图片描述

如图所示,此时的 ip 会自动获取,而且网关和地址解析服务也会自动获得;第一次重启会删除 cat /etc/resolv.conf 文件内容;然后更改其地址解析为 dhcp 自动获得的。

如果不需要获得dns信息, 在网卡配置文件中加入 PEERDNS=no,即可不会自动获得。

在这里插入图片描述

11 设定解析的优先级

以上对于地址解析服务,不仅可以编辑本地解析文件也可以编辑 DNS 指向文件,当地址解析中有设置时,DNS 也做了配置时,那个优先级高呢。

系统默认:本地解析文件 /etc/hosts 的优先级高于 DNS 指向文件 /etc/resolv.conf ;默认设置可以通过人为的办法来更改,如果需要调整可以在 /etc/nsswitch.conf 文件中调整。

如图 85 行 ,默认设置为 file dns ,是本地解析大于 dns 指向文件;可以将其修改为 dns files myhostname,表示指向文件优先级高于本地解析服务。

在这里插入图片描述

12. dhcp服务配置

以上的设置在静态下,只需要手动进行配置即可;如果设置为东逃网络,那么相同网段的其他主机中必须开启一个 dhcpd 的服务。否则网卡启动不起来。

此次实验在 node1 中将配置文件中的内容修改为如下所示,他在开启时就需要自动获取ip ,当没有人开启服务时,就起不来。
DEVICE=ens3
BOOTPROTO=dhcp
ONBOOT=yes
NAME=westos

配置 dhcpd

  • 再另外一台主机中找到安装包,直接安装;

在这里插入图片描述

  • 安装完成之后编辑配置文件,此处选择直接复制,当然也可以用man 5 查看;

在这里插入图片描述

  • 在复制好的文件中,删除 27、28 行之后再删除35行之后的内容;编辑第7和第8行的内容如图所示,第 8 行表示地址解析服务的设置为 114.114.114.114;

在这里插入图片描述

  • 编辑第30和31 行的内容如图所示,30行表示的是 提供 ip 的网段和子网掩码;31行表示的是提供 ip 范围;

在这里插入图片描述

  • 设置完成之后,再 node 1 中重启服务,会得到 ip 和地址解析服务。

在这里插入图片描述

以上设定结束后,还可以在提供服务的主机中查看这个服务提供给了谁。
输入命令 less /var/lib/dhcpd/dhcpd.leases 显示文件信息。

在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值