WHCSRL 技术网

Linux Book 2 Chapter 1 Linux下的网络配置

1.什么是IP ADDRESS

internet protocol ADDRESS ##网络进程地址

ipv4: internet protocol version 4

总共有2的32次方个ip

ip是由32个01组成的

11111110.11111110.11111110.11111110 =254.254.254.254

2.子网掩码

用来划分网络区域

子网掩码非0的位对应的ip上的数字表示这个ip的网络位,子网掩码0位对应的数字是ip的主机位。

网络位表示网络区域

主机位表示网络区域里的主机

3.ip通信判定

网络位一致,主机位不一致的两个IP可以直接通讯

172.25.254.1/24       24=255.255.255.0

172.25.254.10/24

172.25.0.1/16

实验环境配置:需要两个虚拟机nodea和nodeb,其中给nodea加两个网卡

4.网络设定工具

ping检测网络是否通畅
ping -c 1ping 1次
ping -w 1等待1秒
ping -c1 -w1 ipping  1次等待1秒

 

 ifconfig

ifconfig查看或设定网络接口
ifconfig device ip/24设定
ifconfig device down关闭
ifconfig device up开启

具体操作:

 ip addr  ##检测或指定网络接口

ip addr show ##检测

ip addr add ip/24 dev device  ##设定

ip addr del dev ens3 ip/24  ##删除

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

 5.图形方式设定ip

1.nm-connetcion-editor

更改:

服务控制网络(不建议使用)

systemctl restart NetworkManager

 建议使用:

nmcli connection show    ##查看连接

nmcli connection up westos  ##开启连接

nmcli connection down westos  ##关闭连接

  1. nm-connection-editor ##删除之前的,重新添加
  2. nmcli connection reload ##重新加载一下
  3. nmcli connection up ens3 ##打开ens3
  4. ip addr show ens3 ##查看一下

具体操作:

2.nmtui

6.命令方式设定网络

  1. nmcli ##NetworkManager 必须开启
  2. nmcli device connect ens3 ##启用ens3网卡
  3. nmcli device disconnect ens3 ##关闭ens3网卡
  4. nmcli device show ens3 ##查看网卡信息
  5. nmcli device status ens3 ##查看网络服务接口信息
  6. nmcli connection show ##查看连接
  7. nmcli connection up westos ##开启连接
  8. nmcli connection down westos ##关闭连接
  9. nmcli connection delete westos ##删除连接

 具体操作:

 添加连接与更改

  1. nmcli connection add type ethernet con-name westos ifname ens3 ipv4.method manual ipv4.address 1.1.1.210/24 ##添加连接
  2. nmcli connection show ##显示连接
  3. nmcli connection reload ##刷新一下
  4. nmcli connection up westos ##开启
  5. nmcli connection show ##显示连接
  6. nmcli connection modify westos ipv4.address 2.2.2.210/24 ##修改连接
  7. nmcli connection reload ##刷新
  8. nmcli connection up westos ##开启连接
  9. ip a ##查看,修改成功

具体操作:

7.管理网络配置文件

网络配置目录:/etc/sysconfig/network-scripts/

  1. cd /etc/sysconfig/network-scripts/ ##网络配置目录
  2. ls
  3. rm -fr *
  4. ls
  5. vim ifcfg-ens3 ##名称都是ifcfg-xxx
  6. nmcli connection reload ## 刷新,重新加载
  7. nmcli connection up westos ##开启连接
  8. ip a

  1. DEVICE=ens3 ##设备名称
  2. BOOTPROT=none ##dhcp | static |none 设备工作方式
  3. IPADDR0=1.1.1.210 ##ip地址
  4. NETMASK0=255.255.255.0 ##子网掩码
  5. IPADDR1=2.2.2.210
  6. PREFIX1=24
  7. ONBOOT=yes
  8. NAME=westos ##接口名称

  给nodea的两块网卡配置不同网络段的ip:

  1. ifcfg-ens3文件:
  2. DEVICE=ens3
  3. BOOTPROT=none
  4. IPADDR=1.1.1.110
  5. PREFIX=24
  6. ONBOOT=yes
  7. NAME=ens3
  8. ifcfg-ens9文件:
  9. DEVICE=ens9
  10. BOOTPROT=none
  11. IPADDR=172.25.254.110
  12. PREFIX=24
  13. ONBOOT=yes
  14. NAME=ens9

打开nodea的防火墙,设置网络伪装

8.网关

给nodeb设置网关

ip route add default via 1.1.1.110  ##设置网关(临时)
route -n
ping 172.25.254.10
nmcli connection reload  ## 刷新
nmcli connection up westos
 route -n                   ##临时网关,刷新一下就没有了

 设置永久网关 :

  1. vim /etc/sysconfig/network ## 全局网关
  2. nmcli connection reload
  3. nmcli connection up westos
  4. route -n
  5. cat /etc/sysconfig/network

  1. 当一个网卡中有两个ip时,设置指定网关:
  2. cd /etc/sysconfig/network-scripts/
  3. ls
  4. vim ifcfg-ens3
  5. nmcli connection reload ##刷新一下
  6. nmcli connection up westos
  7. route -n
  8. ping 172.25.254.10

 

  1. DEVICE=ens3
  2. BOOTPROT=none
  3. IPADDR0=1.1.1.210
  4. NETMASK0=255.255.255.0
  5. IPADDR1=2.2.2.210
  6. PREFIX1=24
  7. ONBOOT=yes
  8. NAME=westos
  9. GETEWAY0=1.1.1.110 ###网卡中设定的IP有多个时,指定对于那个IP生效

 

9.设定dns

#地址解析
#系统操作者对字符敏感
##系统网络通信需要通过ip地址这个数字
##当操作着输入网址www.baidu.com,这个网址不是一个可以通信的IP地址,于是必须要在系统中把www.baidu.com变成百度服务器的IP地址,这样的过程叫做地址解析。

  1. domain name server == 域名解析服务 ##解析就是把域名变成IP
  2. vim /etc/hosts ##本地解析文件,此文件中直接提供地址解析
  3. ip 域名
  4. 103.235.46.39 www.baidu.com
  5. vim /etc/resolv.conf ##dns的指向文件 不需要重新启动网络立即生效
  6. nameserver 114.114.114.114 ##当需要某个域名的IP地址时去问114.114.114.114
  7. vim /etc/sysconfig/network-scripts/ifcfg-xxxx
  8. DNS1=114.114.114.114 ##需要重启网络,当网络重新启动
  9. ##此参数会修改/etc/resolv.conf

 注意:
档网络工作模式为dhcp时,系统会自动获得ip 网关 dns,那么/etc/resolv.conf会被获得到的信息修改。如果不需要获得dns信息,在网卡配置文件中加入 PEERDNS=no

实验:nodeb通过已经联网的真机去访问网站

 可以发现在nodeb中可以通过百度的ip访问,但是不能通过域名访问,需要去设置dns,有三种方法:

1. 编辑 /etc/hosts 文件,此文件是本地解析文件,文件中直接提供地址解析

2.vim /etc/resolv.conf ##dns的指向文件,不需要重新启动网络立即生效
nameserver 114.114.114.114  ##当需要某个域名的IP地址时去问114.114.114.114

 

3. vim /etc/sysconfig/network-scripts/ifcfg-ens3
    DNS1=114.114.114.114        ##需要重启网络,当网络重新启动
                                                    ##此参数会修改/etc/resolv.conf 

10.设定解析的优先级

系统默认:
/etc/hosts > /etc/resolv.conf
vim /etc/nsswitch.conf
39 hosts: files dns                       ##/etc/hosts优先
vim /etc/nsswitch.conf
39 hosts: dns files                                                    ##/etc/resolv.conf dns指向优先

 11.dhcp服务配置

在nodea中使用景象找到dhcp-server的安装包

 安装dhcp-server

 编辑配置文件:

  1. cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf ##用模板生成配置文件
  2. vim /etc/dhcp/dhcpd.conf
  3. systemctl enable --now dhcpd ##开启服务

 在nodeb中测试

在网络工作模式是dhcp的主机中重启网络,可以看到ip、GW、dns全部获取成功。

 

推荐阅读