Linux之网络配置

时间:2024-04-07 22:00:16

##### 1.什么是IP ADDRESS #####

    internet protocol ADDRESS    ##网络进程地址

    ipv4:internet protocol version 4

    1.2x32
    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.0.1/16            16=255.255.0.0
    IP2包含IP1,可以通信

##### 4.网络设定工具 #####

    1.ping                ##检测网络是否通畅

Linux之网络配置
    2.ifconfig            ##检测或设定网络接口


    ifconfig            ##查看

Linux之网络配置
 

    ifconfig device ip/24        ##设定

Linux之网络配置
Linux之网络配置

^ 以上设定方式是临时设定

    ifconfig device down        ##关闭网卡
    ifconfig device up             ##开启网卡
Linux之网络配置

Linux之网络配置


    2.ip addr             ##检测或设定网络接口


    ip addr show            ##检测

Linux之网络配置


    ip addr add ip/24 dev device    ##设定(在原本没有IP 的前提下)

Linux之网络配置

Linux之网络配置

Linux之网络配置

^ 以上设定方式是临时设定
    
    “注意:device的名字是一个物理事实,看到什么名字只能用什么名字”
    

##### 5.图形方式设定IP #####

    1.nm-connection-editor

实验步骤:

Linux之网络配置

^ 打开图形设置界面,选中需要设置的网卡Edit进入编辑

Linux之网络配置

^ 设置工作方式:以太网

Linux之网络配置

^ 顶端可以更改接口名称,选择网卡

Linux之网络配置

^ 设置IP地址,子网掩码,网关后Save

修改设置之后用ifconfig查看ip地址不会发生改变。

因为记录网络设置的NetworkManager服务信息没有更新,要执行以下命令刷新数据。
      systemctl stop NetworkManager
      systemctl restart network
      systemctl start NetworkManager

Linux之网络配置

Linux之网络配置

 ^ 以上方式是永久设定

 

    2.nmtui

Linux之网络配置

^ 执行nmtui命令后进入设置界面(可以在无图形环境虚拟控制台中使用),回车进入编辑

 

Linux之网络配置

^ 选中需要修改的接口名称,Edit回车进入编辑模式(键盘上下键切换选择)


  Linux之网络配置

^ 编辑界面对接口名称,网卡,ip地址,网关等进行设置后确认退出

与上一种设定方式相同,设置完成后需要重启NetworkManager以及network服务生效。

Linux之网络配置

Linux之网络配置

 ^ 以上方式是永久设定

##### 6.命令方式设定网络 #####

    nmcli                                               ##NetworkManager必须开启

    nmcli device status                      ##查看所有网卡信息
    nmcli device show eth0               ##查看eth0网卡信息
    nmcli device connect       eth0    ##连接eth0接口

Linux之网络配置
Linux之网络配置

^ 有接口信息和IP地址。

    nmcli device disconnect eth0   ##断开eth0接口

Linux之网络配置

^ 不同于ifconfig eth0 down|up ,网卡没有被关闭而是与接口断开。

所以ifconfig 查看时eth0网卡依然存在但没有ip地址。

Linux之网络配置

^ 用nmcli device show eth0命令查看状态时没有接口信息。


    nmcli connection add type ethernet con-name xxx ifname eth0 ip4 172.25.254.136/24

Linux之网络配置

^ 初始状态

Linux之网络配置

Linux之网络配置

^ 添加新的连接


    nmcli connection show                             ##显示接口信息

Linux之网络配置


    nmcli connection down xxx                  ##关闭连接

Linux之网络配置
 

    nmcli connection up xxx                     ##打开连接

Linux之网络配置


    nmcli connection delete xxx              ##删除接口

Linux之网络配置


    nmcli connection modify xxx  ipv4.method auto            ##设置工作方式为动态获取

Linux之网络配置

Linux之网络配置


    nmcli connection modify xxx  ipv4.method manual   ##设置工作方式为静态网络

Linux之网络配置

Linux之网络配置


    nmcli connection modify xxx  ipv4.addresses 172.25.254.236/24      ##更改IP地址

Linux之网络配置

Linux之网络配置

    ^ 以上方式是永久设定

##### 7.管理网络配置文件 #####

    网络配置目录
    /etc/sysconfig/network-scripts/
    网络配置文件的命名规则
    ifcfg-xxxx
    DEVICE=XXX                                     ##设备名称
    BOOTPROTO=dhcp|static|none    ##设备工作方式
    ONBOOT=yes                                    ##网络服务开启时自动**网卡
    IPADDR=                                             ##IP地址
    PREFIX=24                                         ##子网掩码
    NETMASK=255.255.255.0               ##子网掩码
    NAME= xxx                                         ##接口名称

Linux之网络配置
    ^ 一块网卡上配置多个IP

Linux之网络配置

##### 8.回环接口 #####

lo是一个系统虚拟的环回接口,可以实现系统内部发送和接收数据。

##### 9.网关 #####

    实验:设置虚拟机网络

    1.将真机设定为路由器
    systemctl stop libvirtd    
    systemctl restart firewalld
    systemctl start libvirtd

Linux之网络配置

    firewall-cmd --list

Linux之网络配置


    firewall-cmd --permanent --add-masquerade            ##开启路由伪装
    firewall-cmd --reload                                                        ##重新加载配置
    firewall-cmd --list-all                                                         ##查看防火墙

Linux之网络配置

    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.36
    vim /etc/sysconfig/network-scripts/ifconfig-eth0
    GATEWAY0=172.25.254.36        ##当网卡中有多个ip时指定针对哪一个ip生效

Linux之网络配置
    
    3.查看网关
    route -n    
    Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
    0.0.0.0         192.168.43.1    0.0.0.0         UG    600    0        0 wlp3s0
    172.25.36.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 wlp3s0
    192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

Linux之网络配置

Linux之网络配置

^ 真机可以与外网通讯

Linux之网络配置

^ 虚拟机可以与外网通讯

设置虚拟机网络时可能出现的问题:

1.内核路由功能关闭

Linux之网络配置

^ 当net.ipv4.ip_forward = 0时真机路由功能异常,虚拟机不能连接外网

  vim /etc/sysctl.conf

Linux之网络配置

^ 编辑配置文件退出保存

Linux之网络配置

^ 内核路由功能恢复,虚拟机可以连接外网

2.虚拟网卡损坏

排除真机和虚拟机配置问题之外,虚拟机不能正常上网可能是虚拟网卡(硬件)出现问题。

Linux之网络配置

^ 在真机中执行virt-manager命令打开虚拟机控制图形界面,双击要重置网卡的虚拟机。

Linux之网络配置

 ^ 开启虚拟机后点击菜单栏下方的灯泡,选中该网卡右键删除。删除后Add Hardware添加新的网卡。

 

Linux之网络配置

^ 选中Network。更改Device modle为virtio。Finish完成添加。

之后进入虚拟机将新的网卡按上面的步骤配置。

##### 10.DNS(Domain name server):域名解析服务 #####
    
    (1)本地解析

    vim /etc/hosts            ##本地解析文件
    IP    域名

Linux之网络配置

    (2)DNS解析

    vim /etc/resolv.conf        ##DNS的指向文件
    nameserver 114.114.114.114    ##需要解析某域名时访问该IP地址

Linux之网络配置
    vim /etc/sysconfig/network-scripts/ifcfg-xxxx
    DNS1=114.114.114.114

Linux之网络配置

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

当写文件时参数记不清,可以去看/usr/share/doc/initscripts-9.49.17/sysconfig.txt用/关键字搜索要写的参数

##### 11.设定解析的优先级 #####

    系统默认:/etc/hosts > /etc/resolv.conf

    vim /etc/nsswitch.conf
    39 hosts:    files dns    ##/etc//hosts优先
    Linux之网络配置

##### 12.dhcp服务 #####

    1.在服务端主机安装dhcp服务

Linux之网络配置

    2.编辑dhcp配置文件

    vim /etc/dhcp/dhcpd.conf                   ##查看配置文件

Linux之网络配置

cp  /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf           ##拷贝配置文件

Linux之网络配置

vim /etc/dhcp/dhcpd.conf

[[email protected] dhcp]# vim /etc/dhcp/dhcpd.conf
  7 option domain-name "LSY.com";                                           ##域名
  8 option domain-name-servers 172.25.254.0;

  10 default-lease-time 600;                                                             ##默认租约
  11 max-lease-time 7200;                                                                ##最长租约
  27 #subnet 10.152.187.0 netmask 255.255.255.0 {                  ##删除
  28 #}                                                                                                    ##删除
  32 subnet 172.25.254.0 netmask 255.255.255.0 {                    ##子网设定
  33   range 172.25.254.200 172.25.254.210;                                ##IP地址池
  34   option routers 172.25.254.36;                                               ##网关
  35 }
35行之后全部删除

Linux之网络配置

Linux之网络配置

systemctl restart dhcpd                                     ##重启服务刷新配置
systemctl stop firewalld                                     ##停用防火墙

Linux之网络配置

测试:

    1.配置一台客户端主机网络工作模式为dhcp

Linux之网络配置

    2.重启客户端网络服务

Linux之网络配置

^ IP获取成功

/var/lib/dhcpd/dhcpd.leases                    ##客户端中记录IP地址分配哪些主机的文件

Linux之网络配置

^ IP172.25.254.203分配给的网卡硬件地址与测试客户端一致