Come faccio a impostare un IP statico in Ubuntu?

Sono un nuovo con Linux, avendo anni di esperienza con i server/desktop Windows e sto avendo problemi nell'impostare un IP statico. Sto usando un metodo utilizzato per le versioni precedenti di Ubuntu, che non sembra funzionare con la 16.04

Ho usato il comando sudo nano /etc/network/interface e ho aggiunto il seguente

iface enp0s25 inet static
address 10.10.8.2
netmask 255.255.0.0
gateway 10.10.1.1
dns-nameservers 8.8.8.8 8.8.4.4

Ho riavviato il sistema e l'ethernet è praticamente morto, il ping non funziona affatto. Ho provato a modificare /etc/NetworkManager/NetworkManager.conf e ho fatto le seguenti modifiche

#dns=dnsmasq (comment out the dnsmasq)
[ifupdown]
managed=true (changed from false)

Con questo riesco a far funzionare sporadicamente Ethernet, ma alla fine fallisce.

Ho provato questa configurazione su altre due macchine più una macchina virtuale e tutti hanno gli stessi risultati. Posso confermare che queste impostazioni funzionano bene quando installo Windows su una qualsiasi di queste macchine. Anche quando lascio che il DHCP si configuri automaticamente, tutto funziona bene senza problemi.

Immagino che mi manchi qualcosa qui, impostare un IP statico non dovrebbe essere affatto difficile.

Soluzione

Ho avuto lo stesso problema e questa è stata la mia soluzione:

sudo nano /etc/network/interfaces

e incolla (modificando per la tua rete) questo sotto # L'interfaccia di rete primaria:

auto enp0s25
iface enp0s25 inet static
address 192.168.0.16
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 8.8.4.4 8.8.8.8

Potete ottenere il nome corretto dell'interfaccia usando il comando del terminale ifconfig -a su ubuntu 16.04 o ip address su 18.04+.

Spegnete la vostra macchina virtuale e poi! Andate nelle impostazioni di rete e cliccate sul pulsante aggiorna indirizzo MAC un paio di volte :)

e avvia la tua VM e dovresti avere internet!

AGGIORNAMENTO 20.02.2019

Per ubuntu 18.04+ è necessario modificare questo file

/etc/netplan/50-cloud-init.yaml

network:
    ethernets:
        enp0s3:
            addresses: [192.168.0.55/24]
            gateway4: 192.168.0.1
            dhcp4: no
            nameservers:
              addresses: [1.1.1.1,8.8.8.8]
            optional: true
    version: 2
Commentari (2)
# interfaces(5) file used by ifup(8) and ifdown(8)
# auto lo
# iface lo inet loopback
auto enp2s0 
iface enp2s0 inet static
    address 172.16.9.124
    netmask 255.255.240.0
    gateway 172.16.0.9
dns-nameservers 8.8.8.8
Commentari (2)

Ho avuto lo stesso problema e la soluzione "era" semplicemente... per me, almeno.

auto ens160
iface ens160 inet static
address 172.31.0.164/22
netmask 255.255.252.0
gateway 172.31.0.2
network 172.31.0.0
broadcast 172.31.3.255
dns-nameservers 172.31.0.21 172.31.0.18

#Add internal route
up route add -net 172.16.168.0/21 gw 172.31.0.20 dev ens160

E creare un file vuoto con il nome dell'interfaccia di rete:

~$ touch /etc/network/interfaces.d/ens160

Funziona...

Commentari (0)