Ubuntu 17.10 Server статический IP netplan - как установить сетевую маску

Ubuntu 17.10 Server статический IP netplan - как установить сетевую маску

Ubuntu 17.10 Server использует пакет netplanвместо /etc/network/interfaces.

Я создал/etc/netplan/01-netcfg.yaml

Как описано здесь:Ubuntu 17.10 не принимает статический IP

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    ens3:
      dhcp4: no
      dhcp6: no
      addresses: [192.168.0.97/24]
      gateway4: 192.168.0.1
      nameservers:
        addresses: [8.8.8.8,8.8.4.4]

Маска сети по умолчанию netplan:255.255.255.0

Как я могу изменить/установить маску сети, например 255.255.255.1?

решение1

Сетевая маска не может быть 255.255.255.1. Сетевая маска для адресов класса C может быть:

Prefix size         | Subnet mask   
/24                 | 255.255.255.0 
/25                 | 255.255.255.128
/26                 | 255.255.255.192
/27                 | 255.255.255.224
/28                 | 255.255.255.240
/29                 | 255.255.255.248
/30                 | 255.255.255.252

На основе этого ваша конфигурация .yamlможет быть

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    ens3:
      dhcp4: no
      dhcp6: no
      addresses: [192.168.0.97/25]
      gateway4: 192.168.0.1
      nameservers:
        addresses: [8.8.8.8,8.8.4.4]

Или что-то подходящее netmask.

Пожалуйста, имейте в виду, что ip addressхост и gatewayдолжны быть в одном и том же subnet.

решение2

Вы устанавливаете сетевую маску с нотацией CIDR в адресах, поэтому /24 — это 255.255.255.0, /25 — это 255.255.255.128, /28 — это 255.255.255.240 и т. д.

Вот рабочий пример изhttps://netplan.io/examples

network:
  version: 2
  renderer: networkd
  ethernets:
    enp2s0:
      addresses:
        - 10.10.10.2/24
      dhcp4: no
      gateway4: 10.10.10.1
      nameservers:
          addresses: [8.8.8.8, 1.1.1.1]

Или вот так:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp2s0:
      addresses: [10.10.10.2/25]
      dhcp4: no
      gateway4: 10.10.10.1
      nameservers:
          addresses: [8.8.8.8, 1.1.1.1]

Или с псевдонимами:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp2s0:
      addresses: [10.10.10.2/25, 10.10.10.3/25]
      gateway4: 10.10.10.1
      nameservers:
          addresses: [8.8.8.8, 1.1.1.1]

И это тоже работает:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp2s0:
      addresses:
        - 10.10.10.2/25
        - 10.10.10.3/25
      gateway4: 10.10.10.1
      nameservers:
          addresses: [8.8.8.8, 1.1.1.1]

решение3

255.255.255.0представляет собой десятичное представление маски сети IPv4 для маскирования 24 из 32 бит.

11111111.11111111.11111111.00000000(имеется 24 маскирующих бита и 8 демаскирующих битов).

255.255.255.1в двоичном виде 11111111.11111111.11111111.00000001(имеется 25 маскирующих битов и 7 демаскирующих битов).

Такая битовая маска недействительна для сетевой маски, поскольку в ней имеется «дыра» из демаскирующих битов («0») между маскирующими битами («1»).

11111111.11111111.11111111.10000000(двоичный) = 255.255.255.128(десятичный) является допустимым и представляет собой 25 маскирующих битов ( /25)

Связанный контент