如何在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配置,运行ip addr命令:
ip addr
输出将显示所有网络接口的当前分配的IP配置。

Netplan和YAML格式的界面配置文件
Ubuntu 18.04使用一种称为netplan的新方法。在netplan中,接口配置文件位于/etc/netplan目录中,并且配置文件具有.yaml扩展名。YAML语法非常容易理解,只需要知道网络配置所需的内容。
列出/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命令用于在配置更改后重新启动网络。
如何在Ubuntu Server 18.04 LTS中配置静态IP地址的更多相关文章
- ubuntu server 18.04 lts 终端中文显示为乱码的解决方案
		
.最近安装ubuntu server 18.04 lts版本发现系统自带的终端下无论是编辑中文,还是显示中文均出现乱码,还是老毛病, 今天无意中发现通过ssh,远程访问,在windows中安装开源的p ...
 - Ubuntu Server 18.04 LTS 安装
		
版本:Ubuntu Server 18.04.1 LTS 环境:VMware Workstation 14 Player 下载地址:https://www.ubuntu.com/download/se ...
 - Ubuntu Server 18.04 LTS安装
		
Please choose your preferred language. 选择您喜欢的语言 这里直接选择[English] Keyboard configuration 键盘配置 Please s ...
 - Ubuntu Server 18.04 修改网路配置
		
新的Ubuntu 服务器采用netplan管理网络配置,跟以前的配置有很大的区别. 实际可行的办法是修改/etc/netplan/01-netcfg.yaml文件: sudo vim /etc/net ...
 - Ubuntu Server 14.04 LTS(64bit)已安装 weblogic Server 12c(12.1.3) Zip Distribution
		
这里说的对Ubuntu Server 14.04 LTS(64bit)已安装weblogic Server 12c(12.1.3) Zip Distribution遇到的问题.至于Windows什么好 ...
 - ubuntu server 18.04的安装 以及配置网络还有ssh服务
		
ubuntu server 18.04的安装 以及配置网络还有ssh服务 服务器是 dell T420 安装过程中规中矩,其中最关键的是分区部分,由于是服务器,如果磁盘比较大的话,一定要用 uef ...
 - 基于Ubuntu Server 16.04 LTS版本安装和部署Django之(二):Apache安装和配置
		
基于Ubuntu Server 16.04 LTS版本安装和部署Django之(一):安装Python3-pip和Django 基于Ubuntu Server 16.04 LTS版本安装和部署Djan ...
 - ubuntu server 14.04 LTS下搭建LAMP环境之最详细笔记之一U盘安装双系统
		
前言: 一直在WIN上使用PHP,不喜欢用WAMP,每次都是手动在windows配置环境,偶尔有一次装了小红帽玩了两天,感觉不是很习惯就换了回来,过了没几天见讨论LAMP环境,于是安装了ubuntu的 ...
 - VMWare、Ubuntu Server 18.04 共享文件夹
		
背景:VMWare选项中配置了共享文件夹,装完Ubuntu Server 18.04在 /mnt/下都没有 hgfs文件夹,更别提共享文件夹了 参考:Ubuntu16.04版安装VMwareTools ...
 
随机推荐
- 思维导图软件iMindMap怎么用模板制作思维导图
			
随着思维导图的不断发展,市场上相关的软件也越来越多.像XMind.MindManager等.每一款软件都有它独特的亮点.作为众多思维导图软件中的一款,iMindMap算是比较亮眼的了.现在很多人都在用 ...
 - vulnhub: DC 9
			
信息收集: root@kali:/opt/test# nmap -A -v 192.168.76.137 Starting Nmap 7.80 ( https://nmap.org ) at 2020 ...
 - jmeter脚本的编写
			
前几天讲到了性能测试的入门,今日继续来讲解jmeter的使用,本文讲的都是比较细,希望各位耐心的看完. 一.jmeter的安装与打开 前提条件:给大家一个jmeter的安装包 百度网盘的路径如下:链 ...
 - jenkins、gitlab配置CI/CD
			
1. 在gitlab中创建好项目(gitlab的安装和基本使用这里不在说明) 2. 创建jenkins任务 jenkins 需要几个插件请先安装好 - Git plugin - GitLab Plug ...
 - C语言讲义——传值、传引用
			
传值 值类型在做参数的时候,函数内使用的是实参的副本. 函数执行完毕后,即使函数内对参数做了修改,调用方的参数还是原来的值. #include <stdio.h> // 值调用 void ...
 - java数组作为函数返回值
			
1 //将一个二维数组行和列元素互换.存到另一个二维数组 2 package test; 3 4 public class test1_8 { 5 public static int[][] huhu ...
 - vue跨域请求
			
浏览器的同源策略 同源 协议相同 域名相同 端口相同 同源目的 保证用户信息安全,防止恶意的网站窃取数据 同源策略解决方法 jsonp cors 代理解决跨域 settings.py INSTALLE ...
 - vue微博回调接口
			
1.vue微博回调空页面 注:微博回调空页面为: http://127.0.0.1:8888/oauth/callback/ 1.1 页面路径 components\oauth.vue <tem ...
 - 如何在word中插入代码
			
本文使用的是word2007,在网上查阅资料,可以使用如下方法: 1. 插入一个1行1列的表格,然后将代码写在里面,完成之后选中表格: 2. 将样式改为"HTML代码". 其实只是 ...
 - 【佛山市选2013】JZOJ2020年8月7日提高组T1 回文子序列
			
[佛山市选2013]JZOJ2020年8月7日提高组T1 回文子序列 题目 描述 回文序列是指左右对称的序列.例如1 2 3 2 1是回文序列,但是1 2 3 2 2就不是.我们会给定一个N×M的矩阵 ...