Linux下的网络配置

一.什么是IP ADDRESS

       internet protocol ADDRESS ##网络进程地址
       ipv4 internet protocol version 4
       1.2x32
    ip是由32个01组成
    11111110.11111110.111111110.111111110=254.254.254.254
      

二.子网掩码

1.子网掩码用来划分网络区域的
2.子网掩码非0的位对应的ip上的数字表示这个ip的网络位,子网掩码0位对应的数字是ip的主机位
3. 子网掩码只有一个作用,就是将某个IP地址划分成网络位和主机位两部分。网络位表示网络区域,主机位表示网络区域里的某台主机

4.对于A类地址来说,默认的子网掩码是255.0.0.0;对于B类地址来说默认的子网掩码是255.255.0.0;对于C类地址来说默认的子网掩码是255.255.255.0。

 

 

 三.ip通信判定


    网络位一致,主机位不一致的2个ip可以直接通讯
    172.25.254.1/24  24=255.255.255.0
    172.25.254.2/24
    172.25.0.1/16  可以和上面两个地址通信,(包含上面两个地址)可以通信
    

四.网络设定工具


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

Linux下的网络配置

                                                           ping 172.25.254.124###检测172.25.254.124网络是否通畅
    2.ifconfig ##查看或设定网络接口

Linux下的网络配置

                                                                 查看server的ip                                                         
   3. ifconfig device ip/24 ##设定

Linux下的网络配置
    4.ifconfig device down ##关闭

Linux下的网络配置

                                                                    此时eth0已经关闭
    5.ifconfig device up ##开机

Linux下的网络配置    

                                                                      此时eth0已经开启                                                           
    6.ip addr  ##检测这项网络接口

Linux下的网络配置
    7.ip addr show  ##检测

Linux下的网络配置
    8.ip addr add ip/24 dev device ##设定
   

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

 

五.图形方式设定ip

1.nm-connection-editor

Linux下的网络配置

                  将以前的Network删除,新添加一个类型是Ethernet

Linux下的网络配置

            名字改为eth0,MAC地址52:54:00:00:18:0b(eth0)

Linux下的网络配置

  ip设置为静态ip,子网掩码24,网关设置为如图保存关闭

Linux下的网络配置

 ifconfig设置好了如图


systemctl stop NetworkManager
systemctl restart network     
systemctl start NetworkManager

 


2.nmtui 也可以设置

Linux下的网络配置

Linux下的网络配置Linux下的网络配置

 

Linux下的网络配置

Linux下的网络配置

                                                     numtui设置的方法如上

六.命令方式设定网络


nmcli  ##前提:NetworkManager必须开启
nmcli device connect eth0 ##启用eth0网卡

Linux下的网络配置
nmcli  device disconnect eth0 ##关闭eth0网卡

Linux下的网络配置
nmcli device show eth0 ##查看网卡信息

Linux下的网络配置
nmcli device status eth0 ##查看网卡服务

Linux下的网络配置

注意:接口名称可以自定义,device不能
 

命令方式更改ip:
     nmcli connection show

Linux下的网络配置
     nmcli connection delete etho

     nm-connection-editor

Linux下的网络配置
     nmcli connection add type ethernet con-name westos ifname etho ip4 172.25.254.124/24   

     nmcli connection modify westos ipv4.addresses 172.25.254.224/24   
     nm-connection-editor

Linux下的网络配置

 

七.管理网络配置文件

网络配置目录
/etc/sysconfig/network-scripts/
网路配置文件的命名规则
ifcfg-xxxx  
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   
BOOTPROTO=none  
ONBOOT=yes      
IPADDR=172.25.254.124          
PREFIX=24            
NAME=westos   
systemctl restart network

Linux下的网络配置Linux下的网络配置

        
一块网卡上配置多个IP:

vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0   
BOOTPROTO=none  
ONBOOT=yes      
IPADDR0=172.25.254.124          
PREFIX0=24            
NAME=westos   
IPADDR1=172.25.0.124          
PREFIX1=24  
systemctl restart network

ip aadr show eth0

Linux下的网络配置

Linux下的网络配置

 

八.lo回环接口

回环接口-------人的神经—-----127.0.0.1

 1) 什么是LO接口?

  在LINUX系统中,除了网络接口eth0,还可以有别的接口,比如lo(本地环路接口)。

 2) LO接口的作用是什么?

  假如包是由一个本地进程为另一个本地进程产生的, 它们将通过外出链的’lo’接口,然后返回进入链的’lo’接口.具体参考包过滤器的相关内容。

 

九.网关

1.把真实主机变成路由器


systemctl stop libvirtd
systemctl restart firewalld
systemctl start libvirtd

Linux下的网络配置

firewall-cmd --list-all

Linux下的网络配置
firewall-cmd --permanent --add-masquerade

Linux下的网络配置
firewall-cmd --reload

Linux下的网络配置
firewall-cmd --list-all

Linux下的网络配置

 

实验如下:
[[email protected] ~]# systemctl stop libvirtd
[[email protected] ~]# systemctl restart firewalld
[[email protected] ~]# systemctl start libvirtd
[[email protected] ~]# firewall-cmd --list-all
public (default, active)
  interfaces: br0 enp0s25 wlp3s0
  sources:
  services: dhcpv6-client ssh
  ports:
  masquerade: no
  forward-ports:
  icmp-blocks:
  rich rules:     
[[email protected] ~]# firewall-cmd --permanent --add-masquerade
success
[[email protected] ~]# firewall-cmd --reload
success
[[email protected] ~]# 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.设定虚拟机网关(虚拟机操作)
1.vim /etc/sysconfig/network ##更改的是全局网关,针对于所有没有设定网关的网卡都生效
GATEWAY=172.25.254.24(ifconfig br0查看真机ip)

 

vim /etc/sysconfig/network-scripts/ifcfg-eth0
GATEWAY0=172.25.254.24   ##当网卡中有设定的ip有多个时,指定对于那个ip生效(序号对应)
GATEWAY=172.25.254.24    ##当网卡中有设定的ip有一个时

 

2.systemctl restart network
3.route -n ##查看网关是否生效
systemctl


Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0       "172.25.254.24"   0.0.0.0         UG    1024   0        0 eth0
172.25.254.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0

Linux下的网络配置

                                                                         实验结果


十.设定DNS提供给客户


记得关闭防火墙
firewall-cmd-list-all
domain name server == 域名解析服务     ##解析就是把域名变成ip

1.vim /etc/hosts    ##本地解析文件
ip                              域名
220.181.111.188   www.baidu.com

Linux下的网络配置

Linux下的网络配置

Linux下的网络配置

2.vim /etc/resolv.conf ##dns的指向文件(临时的重启会被刷新掉)
nameserver 114.114.114.114 ##当需要某个域名的ip地址时去问114.114.114.114

Linux下的网络配置

vim /etc/sysconfig/network-scripts/ifcfg-xxxx(网卡里是永久的)
DNS1=114.114.114.114

注意:
当网络工作模式为为dhcp时系统会自动获得ip网关dns
那么/etc/resolv.conf会被获得到的信息修改
如果不需要获得信息

 

十一.设定解析的优先级


系统默认:
/etc/hosts > /etc/resolv.conf
 
优先级设定:vim /etc/nsswitch.conf
改优先级:
39  hosts: files dns ##/etc/hosts优先于/etc/resolv.conf 优先显示hosts的ipLinux下的网络配置


39  hosts: dns  files ##/etc/resolv.conf指向优先

Linux下的网络配置

 

十二.dhcp服务配置

静态网络设定

vim /etc/sysconfig/network-scripts/ifcfg-eth0

Linux下的网络配置

Linux下的网络配置

vim /etc/yum.repos.d/rhel_dvd.repo

Linux下的网络配置

yum clean all

yum repolist

Linux下的网络配置

yum install dhcp -y

Linux下的网络配置
cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf

Linux下的网络配置

 


# dhcpd.conf
  2 #
  3 # Sample configuration file for ISC dhcpd
  4 #
  5
  6 # option definitions common to all supported networks...
  7 option domain-name "westos.com";              ##域名
  8 option domain-name-servers 114.114.114.114;   ##dns
  9
 10 default-lease-time 600;    ##默认租约
 11 max-lease-time 7200;       ##最长租约
 12
 13 # Use this to enble / disable dynamic dns updates globally.
 14 #ddns-update-style none;
 15
 16 # If this DHCP server is the official DHCP server for the local
 17 # network, the authoritative directive should be uncommented.
 18 #authoritative;
 19
 20 # Use this to send dhcp log messages to a different log file (you also
 21 # have to hack syslog.conf to complete the redirection).
 22 log-facility local7;
 23
 24 # No service will be given on this subnet, but declaring it helps the
 25 # DHCP server to understand the network topology.
 26
 27 ##27.28删除
 28
 29 subnet 172.25.254.0 netmask 255.255.255.0 {       ##子网设定
 30   range 172.25.254.160 172.25.254.200;            ##IP地址池
 31   option routers 172.25.254.124;                  ##网关
 32 }
 33 ##35行以后全部删除

systemctl restart dhcpd
systemctl stop firewalld

Linux下的网络配置


测试:

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

desktop虚拟机中
systemctl restart network
ifconfig

Linux下的网络配置