Ubuntu 17.10 Servidor netplan IP estático - como configurar netmask

2

O servidor do Ubuntu 17.10 usa o pacote netplan em vez de /etc/network/interfaces .

Eu criei o /etc/netplan/01-netcfg.yaml

Como descrito aqui: O Ubuntu 17.10 não aceitará IP estático

# 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]

A máscara de rede padrão em netplan é: 255.255.255.0

Como posso alterar / definir a netmask? 255.255.255.1 ?

    
por alpha kevin 04.11.2017 / 18:26

3 respostas

7

A máscara de rede não pode ser 255.255.255.1 . A máscara de rede para endereços de classe C pode ser:

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

Com base nisso, sua configuração em .yaml pode ser

# 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]

Ou algum netmask adequado.

Lembre-se de que ip address do host e gateway devem estar no mesmo subnet .

    
por 2707974 04.11.2017 / 19:05
3

Você define a máscara de rede com a notação CIDR nos endereços, portanto, / 24 é 255.255.255.0, / 25 é 255.255.255.128, / 28 é 255.255.255.240, etc.

Este é um exemplo prático do link

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]

Ou assim:

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]

Ou com aliases:

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]

E isso também funciona:

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]
    
por Sean Comeau 12.04.2018 / 12:11
1

255.255.255.0 é a representação decimal da máscara de rede IPv4 para mascarar 24 de 32 bits.

11111111.11111111.11111111.00000000 (existem 24 bits de mascaramento e 8 bits de desmascaramento).

255.255.255.1 no binário é 11111111.11111111.11111111.00000001 (existem 25 bits de mascaramento e 7 bits de desmascaramento).

Tal bitmask não é válido para netmask, pois tem 'hole' de bits de desmascaramento ('0') entre os bits de mascaramento ('1').

11111111.11111111.11111111.10000000 (binário) = 255.255.255.128 (decimal) é válido e representa 25 bits de máscara ( /25 )

por Daos 01.02.2018 / 09:44