34 votes

Comment définir une adresse IP statique ?

J'ai configuré l'adaptateur réseau de l'Ubuntu invité pour qu'il fonctionne en mode ponté afin que je puisse y accéder par ssh depuis la machine hôte.

Le problème est que l'adresse IP de l'invité Ubuntu change constamment.

Même si ça change dans un intervalle très court 192.168.0.4-10, cela prend quand même du temps de configurer Putty et d'autres programmes à chaque fois.

Y a-t-il un moyen de rendre l'adresse IP de l'invité Ubuntu statique ?

Mon système d'exploitation invité dispose de l'interface graphique complète.

35voto

Jonathan Gilbert Points 497

Pour donner une adresse IP statique graphiquement

1. aller à network connections

Modifiez ensuite les connexions dans les paramètres câblés.

3. ajouter l'adresse IP du système

Voici les images ci-dessous

Network Connections

Network-connections!

Si vous êtes curieux, vous pouvez trouver la connexion nouvellement créée à partir des étapes ci-dessus comme fichier de configurations à /etc/NetworkManager/system-connections

31voto

Brian Harrington Points 411

Modifier /etc/network/interfaces pour refléter quelque chose comme ça :

\# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address **192.168.0.X**
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway **192.168.0.X**
dns-nameservers **192.168.0.X**

Alors faites un :

sudo /etc/init.d/networking restart

Et ça va te permettre de t'arranger.

10voto

Radu Rădeanu Points 156862

L'OP a posté :

Configuration de l'IP statique

sudo nano /etc/network/interfaces #  I use vi instead of nano

Lorsque vous ouvrez le document sur les interfaces, vous voyez quelque chose comme ceci :

auto lo eth0
iface lo inet loopback
iface eth0 inet dynamic

Vous voulez le modifier pour intégrer ce qui suit :

auto lo eth0
iface lo inet loopback
iface eth0 inet static
        address xxx.xxx.xxx.xxx (enter your ip here)
        netmask xxx.xxx.xxx.xxx (mine was 255.255.255.0)
        gateway xxx.xxx.xxx.xxx (enter gateway ip here,usually the address of the router)

Enregistrez vos modifications et quittez.

Ensuite, j'ai eu besoin d'ajouter des informations DNS à l'adresse suivante resolv.conf alors j'ai ouvert le fichier comme ça :

sudo nano /etc/resolv.conf # I use vi instead of nano

Initialement, ce fichier est vide, à l'exception d'un avertissement du type "Ne mettez rien rien ici, il sera écrasé". J'ai ajouté les éléments suivants informations suivantes.

Voici le format :

nameserver xxx.xxx.xxx.xxx(enter your dns server ip)
nameserver xxx.xxx.xxx.xxx(enter your alt dns server ip)

C'est ce que j'ai saisi :

nameserver 8.8.8.8 
nameserver 8.8.4.4

Enregistrez vos modifications et quittez.

À ce stade, vous pouvez soit redémarrer le réseau :

sudo /etc/init.d/networking restart  

ou redémarrer, ce que j'ai fait :

sudo reboot

Une fois que j'ai été reconnecté, j'ai réessayé l'installation de pure-ftpd et tout va bien :

apt-get install pure-ftpd

J'espère que ça aidera quelqu'un, j'ai cherché la solution et j'ai juste et je suis tombé dessus par hasard.

2voto

Nagev Points 386

Sur Ubuntu 18.04 LTS et Ubuntu 20, Netplan est disponible et remplacé ifupdown par défaut. Disons que notre interface est ens192 . Pour vérifier s'il est géré par NetworkManager :

cat /run/NetworkManager/conf.d/netplan.conf

Ce qui pourrait donner ceci :

[keyfile]
# devices managed by networkd
unmanaged-devices+=interface-name:ens192,

Sauvegardez le fichier de configuration (votre chemin ou votre fichier peut être différent) :

cp /etc/netplan/01-netcfg.yaml /etc/netplan/01-netcfg.yaml.ori

Puis modifier /etc/netplan/01-netcfg.yaml pour ressembler à quelque chose comme :

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  ethernets:
    ens192:
      dhcp4: false
      wakeonlan: true
      addresses:
        - 192.168.14.2/24
      gateway4: 192.168.14.1
      nameservers:
        addresses: [8.8.8.8]

Générer le fichier de sortie avec debug pour des détails supplémentaires :

sudo netplan --debug generate

Nous aimerions voir :

DEBUG:command generate: running ['/lib/netplan/generate']
** (generate:9991): DEBUG: 18:08:30.447: Processing input file //etc/netplan/01-netcfg.yaml..
** (generate:9991): DEBUG: 18:08:30.447: starting new processing pass
** (generate:9991): DEBUG: 18:08:30.448: ens192: setting default backend to 1
** (generate:9991): DEBUG: 18:08:30.448: Generating output files..
** (generate:9991): DEBUG: 18:08:30.449: NetworkManager: definition ens192 is not for us (backend 1)

Nous pouvons voir la configuration réelle avec :

cat /run/systemd/network/10-netplan-ens192.network

Rendons-le actif en :

sudo systemctl restart systemd-networkd

Préparez-vous à perdre la connexion si vous effectuez cette opération via SSH. Faites man netplan pour plus de détails. Il existe également un réponse correspondante sur ce site. Voir aussi le documentation .

1voto

venky Points 11

Il semble que l'interface eth0 était configuré auparavant et l'adresse était conservée de manière persistante (pour une raison quelconque) par le noyau.

Pour effacer toutes les adresses de l'interface eth0 sans avoir à redémarrer les services réseau ou à faire monter ou descendre l'interface :

sudo ip addr flush dev eth0

Ensuite, vous pouvez utiliser ifup pour configurer eth0 en lisant /etc/network/interfaces fichier :

sudo ifup eth0

Pour la verbosité :

sudo ifup -v eth0

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X