zoukankan      html  css  js  c++  java
  • 如何在Ubuntu Server 18.04 LTS中配置静态IP地址

    安装Ubuntu Server 18.04后需要分配一个的静态IP地址。先前的LTS版本Ubuntu 16.04使用/etc/network/interfaces文件配置静态IP地址,但是Ubuntu 18.04使用称为netplan的新方法。

    在本教程中,我们将学习如何使用netplan在Ubuntu Server 18.04中配置网络接口。我们将研究如何设置静态IP地址,默认网关和DNS名称服务器。

    • 使用ip命令标识可用的网络接口
    • Netplan和YAML格式的界面配置文件
    • 分配静态IP地址(IPv4)
    • 在Ubuntu Server上配置静态IPv6地址
    • 将多个IP地址分配给一个网络接口
    • 配置多个网络接口

    使用ip命令识别可用的网络接口

    在配置静态IP地址之前,需要标识Ubuntu Server 18.04上的可用网络接口以及分配给特定网络接口的设备ID是什么。

    运行ip link show命令,它将列出服务器上所有可用的网络接口。
    ip link show
    使用ip命令识别可用的网络接口

    要查看当前的IP配置,运行ip addr命令:

    ip addr

    输出将显示所有网络接口的当前分配的IP配置。

    ubuntu网络接口

    Netplan和YAML格式的界面配置文件

    Ubuntu 18.04使用一种称为netplan的新方法。在netplan中,接口配置文件位于/etc/netplan目录中,并且配置文件具有.yaml扩展名。YAML语法非常容易理解,只需要知道网络配置所需的内容。

    列出/etc/netplan目录的内容,看到带有yaml扩展名的接口配置文件。

    在netplan中,接口配置文件位于/ etc / netplan目录中,并且配置文件具有.yaml扩展名

    在我的Ubuntu Server中,该文件的名称为50-cloud-init.yaml,但可以根据安装类型使用其他名称进行保存。

    安装类型 接口文件名
    Ubuntu服务器实时ISO /云 50-cloud-init.yaml
    Ubuntu Server ISO(备用Ubuntu Server安装程序) 01-netcfg.yaml
    Ubuntu桌面ISO 01-网络管理器-all.yaml

    在我的Ubuntu Server上,文件内容如下所示:

    # This file describes the network interfaces available on your system
    # For more information, see netplan(5).
    network:
      version: 2
      renderer: networkd
      ethernets:
        enp0s3:
          dhcp4: yes
     

    通过仅查看最后一行:“ dhcp4:yes”,可以说以太网接口enp0s3已配置为从DHCP服务器租用IP地址。如果打算从DHCP服务器分配动态IP地址,则需要此配置。

    分配静态IP地址(IPv4)

    这是带有静态IP分配(IPV4)的样本netplan配置文件,在此配置中,接口enp0s3已配置为IP 192.168.1.100和默认网关192.168.1.1。

    network:
      version: 2
      renderer: networkd
      ethernets:
        enp0s3:
          addresses:
            - 192.168.1.100/24
          gateway4: 192.168.1.1
          nameservers:
            addresses: [8.8.8.8, 4.4.4.4]

    为了应用配置,运行netplan命令:

    sudo netplan apply

    然后,运行ip add命令以确保已应用更改:

    ip add

    如何运作

    在上面的示例中,将enp0s3以太网接口配置为使用静态IP地址192.168.1.100。

    第一行:“版本:2”表示此配置块使用netplan版本2格式。

    network:
      version: 2

    下一行:“ renderer:networkd”告诉此接口由systemd-networkd服务管理。

    renderer: networkd

    如果接口由NetworkManager管理,则networkd的替代选项是NetworkManager。如果查看Ubuntu 18.04桌面的netplan配置文件,则将renderer选项设置为NetworkManager,因为在图形桌面环境中,界面由NetworkManager管理。

    接下来,开始接口配置:

    ethernets:
        enp0s3:

    这里,enp0s3是接口的名称,可以运行ip link show命令来列出Ubuntu Server上的网络接口。

    接着,将静态IP设置为192.168.1.100,网络掩码为24:

    addresses:
      - 192.168.1.100/24

    地址选项也可以按以下格式定义:

    addresses: [192.168.0.101/24]

    接下来,将默认网关设置为192.168.1.1:

    gateway4: 192.168.1.1

    使用选项gateway4,因为它是IPv4网关。对于IPv6网关,需要使用gateway6选项。

    接下来,将DNS服务器设置为8.8.8.8和4.4.4.4。

    nameservers:
      addresses: [8.8.8.8, 4.4.4.4]

    应用新的接口配置,运行netplan命令:

    sudo netplan apply

    该命令会将当前的netplan配置应用于正在运行的系统。不再需要重新启动网络来应用更改。

    在Ubuntu Server上配置静态IPv6地址

    使用相同的netplan格式分配IPv6地址,唯一的区别是,需要使用gateway6选项而不是gateway4。

    network:
      version: 2
      renderer: networkd
      ethernets:
        enp0s3:
          addresses:
            - 2001:1::1/64
          gateway6: 2001:1::2
          nameservers:
            addresses: [8.8.8.8, 4.4.4.4]

    将多个IP地址分配给单个网络接口

    单个网络接口配置有多个IP地址是很常见的。以下是示例Ubuntu netplan配置文件,其中将两个IPv4地址分配给一个网络接口。

    network:
      version: 2
      renderer: networkd
      ethernets:
        enp0s3:
          addresses:
            - 192.168.1.100/24
            - 192.168.1.101/24
          gateway4: 192.168.1.1
          nameservers:
            addresses: [8.8.8.8, 4.4.4.4]
     

    地址选项也可以采用以下格式编写:

    addresses: [192.168.1.100/24, 192.168.1.101/24]

    可以使用IPv4和IPv6地址配置单个网络接口,如以下netplan文件所示:

    network:
      version: 2
      renderer: networkd
      ethernets:
        enp0s3:
          addresses:
            - 192.168.1.100/24
            - 2001:1::1/64
          gateway4: 192.168.1.1
          gateway6: 2001:1::2
          nameservers:
            addresses: [8.8.8.8, 4.4.4.4]

    配置多个网络接口

    在单个服务器上安装多个网络接口是很常见的。这是一个示例netplan文件,为两个网卡配置了静态地址:

    network:
      version: 2
      renderer: networkd
      ethernets:
        enp0s3:
          addresses:
            - 192.168.1.100/24
          gateway4: 192.168.1.1
          nameservers:
            addresses: [8.8.8.8, 4.4.4.4]
        enp0s8:
          addresses:
            - 10.10.10.2/24

    注意,只有主接口已配置了默认网关,在本例中为enp0s3。有多个默认网关是不实际的,默认网关是没有其他路由时发送流量的地址。

    再看另一个同时使用静态和DHCP地址的netplan示例:

    network:
      version: 2
      renderer: networkd
      ethernets:
        enp0s3:
          addresses:
            - 192.168.1.100/24
          gateway4: 192.168.1.1
          nameservers:
              addresses: [8.8.8.8, 4.4.4.4]
      wifis:
        wlp3s0:
          dhcp4: yes
          access-points:
            #configure SSID and wifi password
            "my_ssid":
              password: "my-wifi-password"

    在前面的示例中,wifi接口wlp3s0已配置为从DHCP服务器租用IP地址。

    总结

    在本教程中,我们学习了如何在Ubuntu 18.04上配置静态IP地址,在该版本中不再使用旧的/etc/network/interfaces文件。Ubuntu 18现在使用称为netplan的新方法来管理网络。使用Netplan,网络接口的配置文件以YAML数据格式放在/etc/netplan目录中,而netplan命令用于在配置更改后重新启动网络。

  • 相关阅读:
    Qt Quick 简单介绍
    Windows下ElasticSearch及相关插件的安装
    Light OJ 1317 Throwing Balls into the Baskets 概率DP
    Cocos2d-x-lua学习点滴
    JAVA网络编程--UDP通信
    ASP.NET Web API 应用教程(一) ——数据流使用
    NGUI创建Camera参数为Simple 2D的UI UI对象的结构UI Root(2D)
    端口扫描器——ZenmapKail Linux渗透测
    直接操作游戏对象C#游戏开发
    BeagleBone Black项目实训手册(大学霸内部资料)
  • 原文地址:https://www.cnblogs.com/nuoforever/p/14177682.html
Copyright © 2011-2022 走看看