logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 21-03-2020 21:14:58

Ju
Membre
Distrib. : Debian GNU/Linux 10 (buster) x86_64
Noyau : 4.19.0-6-amd64
(G)UI : Xfce - xfwm4
Inscription : 13-09-2019

Passerelle reseau et DHCP

Bonjour à tous, je cherche à faire un réseau virtuel via virtualbox, avec une passerelle sous Debian qui servira de serveur DNS et qui fournira la sortie vers internet/LAN (si c'est possible).

En gros j'ai schématisé le truc :

Capture-d-cran-2020-03-21-20-01-21.png

J'ai un réseau traditionnel donner par ma box avec des équipements connectés dont un pc (pc5) avec plusieurs VM dessus,  j'aimerai pouvoir connecté ces VM au réseau local  par le bien d'un serveur virtuel avec 2 cartes réseaux :

- Une vers réseau local / internet (192.168.1.x) avec un le dhcp de la box
- L’autre vers réseau VM (192.168.54.x)

Au niveau de la configuration de virtual box j'ai mi le reseau en "réseau privé hôte", le "gestionnaire de réseau hôte" serveur DHCP en off et une adress IPv4 en 192.168.64.1.

Au niveau de la machine serveur debian, elle arrive a se connecter à internet (192.168.1.x) et au réseau virtuel (192.168.54.x) mais impossible de passer

 iface eth0 inet dhcp

en

iface eth0 inet static



Pour mettre en place le serveur DHCP et la passerelle j'ai suivi ce tuto : https://debian-facile.org/doc:reseau:dhcp

J'arrive à mettre en place le serveur DHCP, quand le serveur est allumé, le client récupère bien une ip en 192.168.54.x mais elle n'arrive pas a récupérer internet.

J'ai essaér de mettre en place bridge-utils pour faire la liaison mais rien ne fonctionne.

Actuellement,
Coté server :

/etc/network/interfaces : 


source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug enp0s3
iface enp0s3 inet dhcp
        address 192.168.1.76
        network 192.168.1.255
        dns-nameservers 192.168.1.255
        netmask 255.255.255.0
        gateway 192.168.1.255
post-up iptables-restore < /etc/iptables.save # (1)
# The second network interface
auto enp0s8
        iface enp0s8 inet static
        address 192.168.54.1
        network 192.168.54.0
        netmask 255.255.255.0
#auto br0
#iface br0 inet dhcp
#       bridge_ports enp0s3 enp0s8




/etc/sysctl.conf :

# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1




iptables -L -t nat :

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination        

Chain INPUT (policy ACCEPT)
target     prot opt source               destination        

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination        
MASQUERADE  all  --  anywhere             anywhere            

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  
 



Est ce que j'ai une erreur de paramétrage ?
Comment je peux mettre ce genre de réseau en place ?
Un lien pour m'aider à trouver la solution ?

Merci bcp ! smile

Dernière modification par Ju (21-03-2020 22:59:03)

Hors ligne

#2 22-03-2020 10:21:43

raleur
Membre
Inscription : 03-10-2014

Re : Passerelle reseau et DHCP

Ju a écrit :

Au niveau de la configuration de virtual box j'ai mi le reseau en "réseau privé hôte", le "gestionnaire de réseau hôte" serveur DHCP en off et une adress IPv4 en 192.168.64.1.


A quelle interface s'applique cette adresse exactement ? Je ne retrouve ce sous-réseau nulle part dans le reste de ta configuration.

Ju a écrit :

impossible de passer

iface eth0 inet dhcp


en

iface eth0 inet static


Pourquoi impossible ? L'éditeur de texte refuse d'enregistrer la modification du fichier /etc/network/interfaces ?
D'autre part il n'y a pas d'interface eth0 dans le fichier interfaces que tu exposes plus loin.

Ju a écrit :

le client récupère bien une ip en 192.168.54.x mais elle n'arrive pas a récupérer internet.


"Internet" ne se "récupère" pas. Merci de préciser :
- la configuration IP effective complète du client (ip addr, ip route, /etc/resolv.conf)
- le résultat des tests de connectivité de base (ping routeur, traceroute au-delà du routeur, résolution DNS)

Ju a écrit :

J'ai essaér de mettre en place bridge-utils pour faire la liaison mais rien ne fonctionne.


Du pontage pour faire la liaison entre deux réseaux distincts ? Quelle drôle d'idée.

Ju a écrit :

iface enp0s3 inet dhcp
        address 192.168.1.76
        network 192.168.1.255
        dns-nameservers 192.168.1.255
        netmask 255.255.255.0
        gateway 192.168.1.255
post-up iptables-restore < /etc/iptables.save # (1)


- Les options address, network, netmask, gateway ne sont pas reconnues par la méthode dhcp, seulement par la méthode static.
- L'option network est superflue.
- L'option dns-nameserver(s) n'est prise en compte que si le paquet resolvconf est installé. Est-ce le cas ?
- Avec le préfixe 192.168.1.0/255.255.255.0, 192.168.1.255 correspond à l'adresse de broadcast dirigé, qui n'est pas une adresse d'hôte ou de routeur valide. Il faut mettre l'adresse de la box, qui ne peut pas être 192.168.1.255. C'est généralement la première ou la dernière adresse d'hôte du préfixe, soit 192.168.1.1 ou 192.168.1.254.
- On peut voir le contenu du fichier /etc/iptables.save ?

Ju a écrit :

iptables -L -t nat


La sortie de cette commande est insuffisante. Donne plutôt la sortie de iptables-save.


Il vaut mieux montrer que raconter.

Hors ligne

#3 22-03-2020 13:03:49

Ju
Membre
Distrib. : Debian GNU/Linux 10 (buster) x86_64
Noyau : 4.19.0-6-amd64
(G)UI : Xfce - xfwm4
Inscription : 13-09-2019

Re : Passerelle reseau et DHCP

Merci beaucoup pour ta réponse et de t’intéresser à mon problème.
Je ne suis pas très calé en réseau, loin de là...

raleur a écrit :

A quelle interface s'applique cette adresse exactement ? Je ne retrouve ce sous-réseau nulle part dans le reste de ta configuration.



Je me suis trompé quand j'ai écris, car j'essai en faite de faire 2 sous réseaux 192.168.64.X et 192.168.54.X et je me suis emmêlé les pinceaux quand j'ai tapé le post.
Il s'agit bien pour cette exemple de 192.168.54.X.

raleur a écrit :

Ju a écrit :

impossible de passer

iface eth0 inet dhcp


en

iface eth0 inet static


Pourquoi impossible ? L'éditeur de texte refuse d'enregistrer la modification du fichier /etc/network/interfaces ?


Si il me prend bien la modification mais je perd la connexion avec la box (ma box la voie mais pas d'internet)
Dans cette configuration :

- Je peux me connecté en SSH via le réseau (192.168.1.X),
- Mais ping www.google.fr > "le réseau n'est pas accessible"

[EDIT : Une fois avoir changer les 192.168.1.255 par 192.168.1.254 dans /etc/network/interfaces, j'arrive a ping google ! :D]

raleur a écrit :

D'autre part il n'y a pas d'interface eth0 dans le fichier interface que tu exposes plus loin.



On parle du fichier /etc/network/interfaces ?
La commande "ip address" me renvoi 2 cartes réseaux enp0s3 (eth0 ?) et enp0s8 (eth1?). Ce n'est pas ça ?

raleur a écrit :

Ju a écrit :

le client récupère bien une ip en 192.168.54.x mais elle n'arrive pas a récupérer internet.


"Internet" ne se "récupère" pas. Merci de préciser :
- la configuration IP effective complète du client (ip addr, ip route, /etc/resolv.conf)



On parle bien du clients de la box VirtualBox1 (le serveur DHCP) ? ou du clients de la virtualbox1 ?

Pour ce qui est ip address de Virtualbox1 :

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:01:cb:49 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.76/24 brd 192.168.1.255 scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe01:cb49/64 scope link
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:a1:c5:4f brd ff:ff:ff:ff:ff:ff
    inet 192.168.54.1/24 brd 192.168.54.255 scope global enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fea1:c54f/64 scope link
       valid_lft forever preferred_lft forever



ip route :

192.168.1.0/24 dev enp0s3 proto kernel scope link src 192.168.1.76
192.168.54.0/24 dev enp0s8 proto kernel scope link src 192.168.54.1



/etc/resolv.conf

domain lan
search lan
nameserver 192.168.1.254



raleur a écrit :

Le résultat des tests de connectivité de base (ping routeur, traceroute au-delà du routeur, résolution DNS)


Comment je peux mettre en place ce genre de test ?

raleur a écrit :

Ju a écrit :

J'ai essayé de mettre en place bridge-utils pour faire la liaison mais rien ne fonctionne.


Du pontage pour faire la liaison entre deux réseaux distincts ? Quelle drôle d'idée.


Je pensais pouvoir transférer le réseau internet de enp0s3 vers enp0s8 mais il y a un probleme de DHCP non ?
N'ayant pas d'autre solution et ayant écumer les forums et sites, j'ai donc testé celà. 

raleur a écrit :


- Les options address, network, netmask, gateway ne sont pas reconnues par la méthode dhcp, seulement par la méthode static.
- L'option network est superflue.


Oui c'est bien ce que je pensais.

raleur a écrit :

- L'option dns-nameserver(s) n'est prise en compte que si le paquet resolvconf est installé. Est-ce le cas ?


Oui.
/etc/resolv.conf

domain lan
search lan
nameserver 192.168.1.254



raleur a écrit :

- Avec le préfixe 192.168.1.0/255.255.255.0, 192.168.1.255 correspond à l'adresse de broadcast dirigé, qui n'est pas une adresse d'hôte ou de routeur valide. Il faut mettre l'adresse de la box, qui ne peut pas être 192.168.1.255. C'est généralement la première ou la dernière adresse d'hôte du préfixe, soit 192.168.1.1 ou 192.168.1.254.


Ok un probleme de résolu car je n'arrivai pas à trouver l'info, donc on part sur 192.168.1.254

https://www.assistance.bouyguestelecom. … ation-bbox

raleur a écrit :

- On peut voir le contenu du fichier /etc/iptables.save ?



# Generated by xtables-save v1.8.2 on Sat Mar 21 18:15:09 2020
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -o enp0s8 -j MASQUERADE
COMMIT
# Completed on Sat Mar 21 18:15:09 2020
 



Merci encore !!! :)

Hors ligne

#4 22-03-2020 13:44:00

raleur
Membre
Inscription : 03-10-2014

Re : Passerelle reseau et DHCP

Ju a écrit :

Je ne suis pas très calé en réseau, loin de là


Je vois ça... Quand on s'attaque à ce genre de configuration, il serait préférable de se familiariser un peu plus sur les concepts qu'on manipule, sinon on rame et on trébuche à chaque pas. Ne serait-ce que pour comprendre les explications qu'on te donne. (pour le soutien psychologique, je ne suis pas la bonne personne)

Ju a écrit :

La commande "ip address" me renvoi 2 cartes réseaux enp0s3 (eth0 ?) et enp0s8 (eth1?). Ce n'est pas ça ?


Les interfaces présentes sont enp0s3 et enp0s8. enp0s3 n'est pas eth0 et enp0s8 n'est pas eth1.

Ju a écrit :

Si il me prend bien la modification mais je perd la connexion avec la box (ma box la voie mais pas d'internet)


"Il prend bien la modification" -> donc n'écris pas que c'est impossible. Le problème est différent. Merci de décrire précisément les problèmes.
"je perd la connexion avec la box" -> vague. Qu'est-ce que ça signifie concrètement ?
"ma box la voie" -> ta box voit quoi ? Ce que tu écris est incompréhensible !
" mais pas d'internet" ->vague. Qu'est-ce que ça signifie concrètement ?

Et le reste est à l'avenant. Etre faible en réseau ne dispense pas de faire un effort de rédaction.

Ju a écrit :

On parle bien du clients de la box VirtualBox1 (le serveur DHCP) ? ou du clients de la virtualbox1 ?


On parle du client dont tu parlais. Oui, les clients de ton serveur DHCP.

Ju a écrit :

ip route :


Pas de route par défaut, donc forcément pas d'accès internet.

Ju a écrit :

Comment je peux mettre en place ce genre de test ?


Avec les commandes habituelles ping, traceroute, host, dig... C'est vraiment la base de la base, on ne devrait pas s'aventurer à faire du réseau sans les connaître.

Ju a écrit :

Je pensais pouvoir transférer le réseau internet de enp0s3 vers enp0s8 mais il y a un probleme de DHCP non ?


Qu'entends-tu exactement par "transférer" ? Quel problème de DHCP ?

Ju a écrit :

L'option dns-nameserver(s) n'est prise en compte que si le paquet resolvconf est installé. Est-ce le cas ?


Oui.
/etc/resolv.conf


Je parle du paquet resolvconf, pas du fichier /etc/resolv.conf. Si resolvconf était installé, le fichier /etc/resolv.conf devrait contenir un commentaire le mentionnant explicitement :

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
 



Ju a écrit :

-A POSTROUTING -o enp0s8 -j MASQUERADE


Ce n'est pas la bonne interface. Le masquerading doit être mis sur l'interface qui fait face à internet, donc enp0s3.

Dernière modification par raleur (22-03-2020 13:48:33)


Il vaut mieux montrer que raconter.

Hors ligne

#5 22-03-2020 17:05:37

Ju
Membre
Distrib. : Debian GNU/Linux 10 (buster) x86_64
Noyau : 4.19.0-6-amd64
(G)UI : Xfce - xfwm4
Inscription : 13-09-2019

Re : Passerelle reseau et DHCP

raleur a écrit :

Je vois ça... Quand on s'attaque à ce genre de configuration, il serait préférable de se familiariser un peu plus sur les concepts qu'on manipule, sinon on rame et on trébuche à chaque pas. Ne serait-ce que pour comprendre les explications qu'on te donne. (pour le soutien psychologique, je ne suis pas la bonne personne)


C'est pour ça que je me lance dans ce genre de petit projet pour en apprendre un peu plus avec des cas concrets. À cœur vaillant rien d'impossible.
Pour ce qui est du soutien psychologique ce n'est pas vraiment ce que je cherche sur le forum. big_smile

raleur a écrit :

Les interfaces présentes sont enp0s3 et enp0s8. enp0s3 n'est pas eth0 et enp0s8 n'est pas eth1.


Quelle est la différence ?
C'est pas juste, pour faire simple, le nouveau nom des interfaces réseaux ?
https://www.p3ter.fr/debian-ubuntu-eth0-c-est-fini.html

raleur a écrit :

"je perd la connexion avec la box" -> vague. Qu'est-ce que ça signifie concrètement ?
"ma box la voie" -> ta box voit quoi ? Ce que tu écris est incompréhensible !
" mais pas d'internet" ->vague. Qu'est-ce que ça signifie concrètement ?


Une fois avoir changé le 192.168.1.255 par 192.168.1.254 dans /etc/network/interfaces, j'arrive à ping google. Donc problème résolu.

raleur a écrit :

Avec les commandes habituelles ping, traceroute, host, dig... C'est vraiment la base de la base, on ne devrait pas s'aventurer à faire du réseau sans les connaître.


Je connais celles-ci, après je connais peut-être pas toutes les commandes qui existent ...

raleur a écrit :

Je parle du paquet resolvconf, pas du fichier /etc/resolv.conf. Si resolvconf était installé, le fichier /etc/resolv.conf devrait contenir un commentaire le mentionnant explicitement :


Effectivement il n’était pas installer.

J'ai changer le masquerading en enp0s3.

Le clients de 192.168.54.1 :

/etc/network/interfaces :

auto lo
iface lo inet loopback



ifconfig :

enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.54.3  netmask 255.255.255.0  broadcast 192.168.54.255
        inet6 fe80::e260:1fda:9189:e3  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:34:9b:3d  txqueuelen 1000  (Ethernet)
        RX packets 632  bytes 43999 (43.9 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1028  bytes 86795 (86.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 356  bytes 25010 (25.0 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 356  bytes 25010 (25.0 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0



route :

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.54.1    0.0.0.0         UG    100    0        0 enp0s3
192.168.54.0    0.0.0.0         255.255.255.0   U     100    0        0 enp0s3



resolv.conf :

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
# 127.0.0.53 is the systemd-resolved stub resolver.
# run "systemd-resolve --status" to see details about the actual nameservers.

nameserver 127.0.0.53

Hors ligne

#6 22-03-2020 17:37:42

raleur
Membre
Inscription : 03-10-2014

Re : Passerelle reseau et DHCP

Ju a écrit :

Les interfaces présentes sont enp0s3 et enp0s8. enp0s3 n'est pas eth0 et enp0s8 n'est pas eth1.


Quelle est la différence ?


N'est-ce pas évident ? Ce ne sont pas les mêmes noms. Si tu mets "eth0" dans une commande ou un fichier de configuration alors que l'interface s'appelle enp0s3, ça ne marchera pas.

Ju a écrit :

Une fois avoir changé le 192.168.1.255 par 192.168.1.254 dans /etc/network/interfaces, j'arrive à ping google. Donc problème résolu.


Seulement depuis la VM servant de routeur (on ne dit plus "passerelle", c'est trop vague) ou aussi depuis les VM clientes ?

La configuration du client semble correcte, excepté qu'à cause de systemd-resolved on ne voit pas la véritable adresse du serveur DNS interrogé dans /etc/resolv.conf. Il faut exécuter la commande mentionnée dans le commentaire pour en savoir plus.


Il vaut mieux montrer que raconter.

Hors ligne

#7 22-03-2020 18:41:42

Ju
Membre
Distrib. : Debian GNU/Linux 10 (buster) x86_64
Noyau : 4.19.0-6-amd64
(G)UI : Xfce - xfwm4
Inscription : 13-09-2019

Re : Passerelle reseau et DHCP

raleur a écrit :

N'est-ce pas évident ? Ce ne sont pas les mêmes noms. Si tu mets "eth0" dans une commande ou un fichier de configuration alors que l'interface s'appelle enp0s3, ça ne marchera pas.


Si, c'est pour ça que ça ma fait douter.

raleur a écrit :

Seulement depuis la VM servant de routeur (on ne dit plus "passerelle", c'est trop vague) ou aussi depuis les VM clientes ?


Le ping sur google ne fonctionne que depuis la VM servant de routeur, les autres machines sur 192.168.54.X n'arrivent pas à ping google.

Quand je lance un scan nmap depuis 192.168.54.3 vers 192.168.54.X elle me retrouve bien les autres machines sur 192.168.54.X
Quand je lance un scan nmap depuis 192.168.54.3 vers 192.168.1.X elle me retrouve bien les autres machines sur 192.168.1.X


raleur a écrit :

La configuration du client semble correcte, excepté qu'à cause de systemd-resolved on ne voit pas la véritable adresse du serveur DNS interrogé dans /etc/resolv.conf. Il faut exécuter la commande mentionnée dans le commentaire pour en savoir plus.



systemd-resolve --status :

Link 2 (enp0s3)
Current Scope: DNS
LLMNR: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
DNS Servers: 192.168.54.1

Hors ligne

#8 22-03-2020 19:08:36

raleur
Membre
Inscription : 03-10-2014

Re : Passerelle reseau et DHCP

Ju a écrit :

Le ping sur google ne fonctionne que depuis la VM servant de routeur, les autres machines sur 192.168.54.X n'arrivent pas à ping google.


Et voilà, encore une réponse vague. Il faut indiquer le message d'erreur exact (unknown host, network unreachable, voire pas de réponse du tout). D'autre part on ne mélange pas les tests en combinant routage et résolution DNS, en cas d'échec ça complique le diagnostic.

Si le ping au-delà de la VM routeur reçoit une réponse, on peut supposer que le routage est bon. C'est probablement la résolution DNS qui ne marche pas. Tu as essayé le ping/traceroute vers une'adresse IP extérneure comme 8.8.8.8 (DNS public de Google) par exemple ?

DNS Servers: 192.168.54.1


Je suppose que tu as déclaré 192.168.54.1 comme DNS dans la configuration du serveur DHCP ? Mais est-ce que tu as mis en place un serveur DHCP récursif (bind9, dnsmasq, unbound...) sur la VM routeur ? Sinon il faut soit le faire, soit déclarer comme DNS les adresses de vrais serveurs DNS qui répondent (l'adresse de la box, des DNS du FAI, de Google...)

Dernière modification par raleur (22-03-2020 19:09:05)


Il vaut mieux montrer que raconter.

Hors ligne

Pied de page des forums