Como ligar um intervalo de ips a interfaces ubuntu

1

Estou tentando vincular um intervalo de IPs (2048 no total) em um servidor Ubuntu e a única maneira que conheço é adicionar um por um ao arquivo de interfaces e reiniciar o serviço de rede da seguinte forma:

### /etc/network/interfaces ###
auto enp2s0:1
iface enp2s0:1 inet static
address 200.20.39.1
netmask 255.255.255.255

auto enp2s0:2
iface enp2s0:2 inet static
address 200.20.39.2
netmask 255.255.255.255

etc etc.

O problema com essa abordagem é que, quando eu reinicio a rede para aplicar essas mudanças e verificar o comando ifconfig, estou adicionando apenas 8 ou 9 ips no momento, então tenho que reiniciar o serviço novamente para adicionar mais 8 e assim por diante. , então levarei 30 horas para adicionar esses ips.

Eu sei que nos sistemas baseados em Redhat você tem a opção de adicionar intervalos facilmente assim:

/etc/sysconfig/network-scripts/ifcfg-eth0-range0
IPADDR_START=192.168.0.100
IPADDR_END=192.168.0.200
CLONENUM_START=0

Existe alguma maneira de fazer isso no Ubuntu? ou qualquer outro meio mais rápido?

    
por notforever 08.10.2018 / 15:58

2 respostas

0

Se você não se importar em não ter alias de interface (por exemplo, :0 , :1 etc.), pode adicionar quantos endereços IP desejar em enp2s0 com o comando ip addr add no evento up :

auto enp2s0
iface enp2s0 inet static
address 200.20.39.1
netmask 255.255.248.0
up ip addr add 200.20.39.1/21 dev enp2s0
up ip addr add 200.20.39.2/21 dev enp2s0
...
up ip addr add 200.20.39.254/21 dev enp2s0
...

e assim por diante.

Deve ser muito fácil gerar as 2048 linhas programaticamente e, em seguida, um simples ifdown enp2s0 / ifup enp2s0 deve prepará-lo sem várias reinicializações do serviço de rede.

AVISO LEGAL

Tenha em mente que você deve fazer ifdown somente se conectado localmente ou conectado remotamente através de outra interface, pois você perderá conectividade com o servidor se conectando a enp2s0 .

    
por 08.10.2018 / 16:14
0

Se você adicionar uma sub-rede à sua interface lo , o linux responderá a qualquer endereço dentro dessa sub-rede.

Para ilustrar isso, digamos que você tenha um endereço IP 192.168.1.99 na sua interface ethernet. Agora adicione 10.1.2.0/21 à sua interface:

ip addr add 10.1.2.0/21 dev lo

Agora ele reagirá a qualquer solicitação de arp para qualquer endereço IP dentro desse intervalo, em qualquer interface.

Para alcançar esses endereços IP de outros sistemas no seu intervalo 192.168.1.0/24, você precisará definir uma rota nesses sistemas para essa sub-rede por meio de seu endereço principal, ou seja, 192.168.1.99 nesse caso. Como alternativa, adicione essa rota ao gateway padrão, ele deve enviar redirecionamentos de ICMP quando necessário para esse host.

    
por 08.10.2018 / 16:42