zoukankan      html  css  js  c++  java
  • Linux从入门到精通——Linux下的网络配置

    ####linux下的网络配置###

    1.什么是IP ADDRESS
           internet protocol ADDRESS    ##网络进程地址
           ipv4  internet protocol version 4
          ip是由32位组成,是由32个0和1组成
           11111111.11111111.11111110.11111110 = 254.254.254.254
           一个区域的集和叫网络位。

    2.子网掩码
           是用来划分网络区域的,上面非0的位对应的ip,上的数字表示这个ip的网络位。0位对应的数字是ip的主机位。
           网络位表示网络区域


    3.ip通信判定
        172.25.254.1/24     ##前三个为网络位,后面的1为主机位
        172.25.254.2/24     ##前两个可以连接
        172.25.2.1/16         ##这个包含前面两个的地址,所以就可以和那两个链接,但是前面两个链接后面这个有可能会出问题
                                      ##前两位一样的其实是都可以链接的,只是有可能不稳定
                                      ##最后一个这个网络区域大,包含上面两个网络区域小的

    4.网络设定工具(临时设定)

         ping    ##检测网络是否通畅    ping -c 10 -i 0.5 172.25.254.10   ##表示 ping 172.25.254.10 这个主机 -c 表示 ping 的次数,-i 表示 ping的时间间隔。

         ifconfig   ##查看或设定网络接口
         ifconfig (device) ip/24   ##设定

         ifconfig (device) down/up      ##开启/关闭某接口
           【device的名字是一个物理事实(有什么用什么) eth0是网卡名】

         ip addr   ##检测或这顶网络接口 
         ip addr show   ##检测,查看
         ip addr add ip/24 dev device  ##设定ip没有ip的时候
         ip addr change ip/24 dev device  ##本来存在ip的时候

      在linux中只要在一个网卡上配置的ip是同一个网段的,那么它有Primary IP和Secondary address的区分,反之只要不是同一个网段的ip那么都是Primary IP;primary 和secondary 的关系就是一条链上的吊链结构中上面的那条主链中的IP就是Primary IP,Secondary address是主链结点的子链结点中的IP,一 旦主链上一个节点被删除了,那么它的子链也将不复存在,随之被删除

    5.图形方式设定ip
       (1)nm-connection-editor
          networkmanager记录网络状态的服务
          关闭网络状态的服务关闭——>restart network——>再开启记录服务
          真正管理网络的是network
     
          【如果关闭了图形(init3)就用不了这个】
       (2)nmtui  ##有没有图形都能用,在有图形时直接输入nmtui

    6.命令的方式设定网络
       (1)nmcli    ##前提是networkmanager必须开启

      Red Hat Enterprise Linux 7 与 CentOS 7 中默认的网络服务由 NetworkManager 提供,这是动态控制及配置网络的守护进程,它用于保持当前网络设备及连接处于工作状态,同时也支持传统的 ifcfg 类型的配置文件。

       NetworkManager 可以用于以下类型的连接:Ethernet,VLANS,Bridges,Bonds,Teams,Wi-Fi,mobile boradband(如移动3G)以及 IP-over-InfiniBand。针对与这些网络类型,NetworkManager 可以配置他们的网络别名,IP 地址,静态路由,DNS,VPN连接以及很多其它的特殊参数。

       可以用命令行工具 nmcli 来控制 NetworkManager


            show显示网卡信息  status显示为谁工作的
            nmcli device connect eth0          ##启用eth0网卡
            nmcli device disconnect eth0     ##关闭eth0网卡
            nmcli device show eth0              ##显示网卡信息
            nmcli device status eth0            ##查看网卡服务接口信息

            nmcli connection show                  ##显示网卡接口信息
            nmcli connection down student      ##关闭网卡接口信息

            nmcli connection up student          ##开启网卡接口信息
            nmcli connection delete student    ##删除网卡接口信息
            nmcli connection add type ethernet con-name westos ifname eth0 ip4 172.25.254.100/24

                    ##添加一个类型为以太网接口名称为westos网卡名称为eth0使用静态网络ipv4为以上的网络
            nmcli connection modify student ipv4.method auto                                ##更改ipv4的网络连接方式为动态的
            nmcli connection modify student ipv4.method manual                            ##更改ipv4的网络连接方式为静态的
            nmcli connection modify student ipv4.addresses 172.25.254.210/24    ##更改ipv4的地址是172.25.254.210/24

    7.管理网络配置文件(以编辑文件的方式)
       (1)网络配置目录    /etc/sysconfig/network-scripts/
       (2)网络配置文件的命名规则
            ifcfg-xxx
            DEVICE=eth0     ##设备名称
            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.10
           PREFIX=24
           NAME=student

           systemctl restart network

           注意:同一个网卡设置多个ip
           ifconfig eth0  ##只能查看0的那个配置文件
           ip addr show   ##想要查看一个网卡全部的ip,用这个命令

    8.lo回环接口
           回环接口————类似于人的神经————127.0.0.1————localhost
           主机内部,当一个服务只开在回环接口,只能自己链接。
           0.0.0.0表示都能用

    9.网关
          假如虚拟机的IP为172.25.254.110,想要上网,而公网的IP为183.232.231.172.两个不在一个网域内,所以不能连接,需要一个转换器(toute路由器,路由器里面有很多区域的ip),虚拟机给路由器一个IP为172.25.254.110的包,然后路由器将这个包伪装一个新的IP为183.233.231.172的包发给公网。因为网络位相同所以可以连接。这个过程叫SNAT(SNAT = source network address transform)
       (DNAT =directory network address transform 目的地地址转换 )
       (1)把真实主机变成路由器
            systemctl stop libvirtd
            systemctl restart firewalld  ##火墙打开才会有地址伪装功能
            systemctl start libvirtd
       
            firewall-cmd --list
            firewall-cmd --permanent --add-masquerade(地址伪装)
            firewall-cmd --reload
            firewall-cmd --list-all
       

            当出现masquerade:yes的时候,地址伪装功能开启,真实主机变成路由器
       (2)设定虚拟机的网关(虚拟机通过哪一个IP链接路由器)
            vim /etc/sysconfig/network   ##全局网关(针对所有没有设定网关的网卡生效)
            GATEWAY=172.25.254.10

            vim /etc/sysconfig/network-scripts/ifcfg-eth0
            GATEWAY0=172.25.254.10   ##当网卡中设定的IP有多个的时候
            GATEWAY=172.25.254.10   ##当网卡中设定的IP有单个的时候

            systemctl restart network
            route -n        ##查看网关是否添加上

               【真机的网关查看:ifconfig bro0】
               【br0和虚拟机链接  wlp3s0和公网链接】
             ###当全部步骤做完后,ping主机的br0的IP的时候平不到,有可能是网卡的问题,在真实主机上,  1)输入virt-manager  2)点击desktop  3)点击灯泡
      4)将原本的网卡remove  5)add重新添加一个network,选择virtio
    完成以后再ping主机

         ###当地址伪装,虚拟机也能ping通真实主机,那就看内核路由功能是否打开,在真机上, 1)vim /etc/sysctl.conf   2)sysctl -a | grep ip_forward   会发现net.ipv4.ip_forward=0(要更改这个为1)  3)sysctl -p   会更改成net.ipv4.ip_forward=1 

                                以上是应为自己知道网关是多少加在文件中的,然而不知道网关,就用不了上面的方法


    10.设定DNS

       DNS = Domain name server == 域名解析服务
          ##解析就是把域名变成IP
          DNS 地址解析 把网址(域名)和IP联系到一起,通过网络共享
          谁提供地址解析,谁就是我的DNS(提供解析的ip)

       (1)vim /etc/resolv.conf   ##DNS的指向文件
            nameserver 114.114.114.114
                ##当需要某个域名的IP地址时去问114.114.114.114
                【即改即生效】

       (2)vim /etc/hosts/  本地解析文件(自己告诉自己,在文件添加baidu就是某一个ip) 
            ip            域名
            220.181.111.181       www.baidu.com

       (3)vim /etc/sysconfig/network-scripts/ifcfg-xxx
            DNS1=114.114.114.114
       
       注意:
        当网络工作模式为dhcp时,系统会自动获得:ip 网关 DNS
        那么/etc/resolv.conf会被获取到的信息修改
        如果不需要获得DNS信息,在网卡配置文件中加入
        PREEDNS=no



    11.设定解析DNS的优先级
          系统默认:
          /etc/hosts > /etc/resolv.conf
          修改优先级:
          vim /etc/nsswitch.conf
          39.hosts: files dns   ##/etc/hosts优先
          39.hosts: dns  files  ##/etc/resolv.conf dns指向优先

     

    12.dhcp配置服务

       在server服务器上设置:

        (1)yum install dhcp -y
        (2)vim /etc/sysconfig/network-scripts/ifcfg-eth0
        改成none
        (3)systemctl restart network
        (4)vim /etc/yum.repos.d/rhel_dvd.repo
          baseurl:http://172.25.254.250/rhel7
        (5)ping 172.25.254.250
        (6)yum clean all
        (7)yum repolist
       
        (8)vim /etc/dhcp/dhcpd.conf
        (9)cp /usr/share/doc/dhcp*/dhcp.conf.example /etc/dhcp/dhcpd.conf
        (10)vim dhcpd.conf
          ##27和28以及35行以后删除
          ##195 option domain-name "student.com"   域名 
          ##196 option domain-name-servers 114.114.114.114  DNS
          ##default-lease-time 600   默认租约期
          ##max-lease-time 7200    最长租约期
         
          ##subnet 172.25.254.0 netmask 255.255.255.0 { 子网设定                           ## subnet 网络     netmask 子网掩码
             range 172.25.254.160  172.25.254.200;  IP地址池
              option routers 172.25.254.250;   网关
             }

        (11)systemctl restart dhcpd
        (12)systemctl stop firewalld

        测试:

     在client客户端上:

      重新添加一块网卡,配置网络。

      1.可以在图形界面:   nm-connection-editor  —>  将类型配置为 dhcp 模式  —>  保存  —>  ifconfig 查看是否有分配的 ip

      2.可以用命令行的方式:   nmcli  connection  modify  eth1  ipv4.method  manual

         结果:在网络工作模式是dhcp的主机中重启网络可以看到 IP GW DNS全部获取成功

     

  • 相关阅读:
    MySQL的事务用法:
    MySQL基本命令(增删改查,check约束)总结:
    (转)nodejs npm国内镜像
    NodeJS学习笔记(三)
    NodeJS学习笔记(二).js
    minimist的用法
    npm link没有效果的问题
    DOM Based XSS介绍
    NodeJS学习笔记(一)
    用Ruby写自动生成Sql语句脚本遇到的问题
  • 原文地址:https://www.cnblogs.com/wf-aiyouwei/p/9393259.html
Copyright © 2011-2022 走看看