web-dev-qa-db-fra.com

Ubuntu 18.04 netplan routes statiques

Besoin d'aide avec les routes statiques dans la nouvelle configuration de netplan. Avoir le serveur Ubuntu 18.04 avec 2 interfaces réseau, ethernet et wlan . Après le succès de base configuration dans /etc/netplan/50-cloud-init.yaml i dispose des deux réseaux. Mais enp3s0 est un intranet, wlp2s0 est un routeur wifi. Et je ne peux pas faire Internet via wifi. Après quelques jours de configuration/reconfiguration du fichier Yaml , je ne parviens pas à le faire fonctionner.

La suppression de la passerelle par défaut /sbin/route del default gw 10.185.0.1 fonctionne, mais aucun routage vers l'intranet. Route -n liste

Comment ajouter cette route je n'ai aucune idée ...

    network:
  version: 2
  renderer: networkd
  ethernets:
        enp3s0:
            addresses: []
            dhcp4: true
            gateway4: 10.185.0.1
            nameservers:
              addresses: [10.185.x.x, y.y.y.y]
            routes:
            - to: 10.185.0.0/0
              via: 10.185.0.1
              metric: 100
              table: 101
            routing-policy:
              - from: 10.185.0.0/24
                table: 101

  wifis:
        wlp2s0:
            addresses: []
            dhcp4: true
            optional: true
            gateway4: 192.168.8.1
            access-points:
                 "Wifi":
                    password: "password"
            nameservers:
              addresses: [8.8.8.8,8.8.4.4]
            routes:
            - to: 0.0.0.0/0
              via: 192.168.8.1
              metric: 90
              table: 91
            routing-policy:
              - from: 192.168.8.0/24
                table: 91

UPD: Ignorez config /etc/systemd/network/. Utiliser UseRoutes=false provoque une recherche infinie sur le réseau au démarrage, régler RouteMetric=700 fonctionne mieux, avec Internet après wifi après le démarrage! Mais l’ajout d’une nouvelle route telle que: 10.180.0.0/16 via 10.185.0.1 n’a pas d’effet et n’apparaît pas dans le tableau de routage du noyau de la route.
Et je ne comprends toujours pas pourquoi le tracerout 172.16.185.194 passe par 192.168.8.1. J'ai lu sur la table ip4, mais - to: 172.16.0.0/12 ou /16 ne fonctionne pas.

5
Elendiar

En général, ce que vous voulez ici est:

  • Configurez une seule passerelle par défaut (avec gateway4) sur l'interface qui se connecte à Internet. Si vous définissez des passerelles par défaut sur les deux, la moitié des paquets seront acheminés vers votre intranet et ne pourront pas atteindre leur destination.

  • Si votre intranet comporte plusieurs sous-réseaux, vous avez besoin d'itinéraires statiques pour les atteindre via l'interface connectée à votre intranet. (Un exemple pourrait être le routage de RFC1918 sous-réseaux vers cette interface, ce qui serait probablement une bonne idée.)

Maintenant, dans votre exemple spécifique, vous n'avez pas complètement décrit votre intranet, mais supposons que votre intranet soit constitué du réseau 10.185.x.y, autrement dit, 10.185.0.0/ 16.

Supposons également que votre interface enp3s0 vous donnant accès à l'intranet recevra une IP dans le sous-réseau 10.185.0.z, autrement dit 10.185.0.0./ 24 sous-réseau et que la passerelle de ce sous-réseau est 10.185.0.1.

Donc, vous avez besoin d'un itinéraire statique pour atteindre le reste de la 10.185.xLes sous-réseaux .y où x n'est pas 0.

Vous pouvez utiliser une configuration telle que celle ci-dessous pour configurer ceci:

network:
  version: 2
  renderer: networkd
  ethernets:
        enp3s0:
            addresses: []
            dhcp4: true
            nameservers:
              addresses: [10.185.x.x, y.y.y.y]
            routes:
            - to: 10.185.0.0/16
              via: 10.185.0.1
  wifis:
        wlp2s0:
            addresses: []
            dhcp4: true
            optional: true
            gateway4: 192.168.8.1
            access-points:
                 "Wifi":
                    password: "password"
            nameservers:
              addresses: [8.8.8.8,8.8.4.4]

Dans cette configuration modifiée, notez que:

  • Il n'y a pas de gateway4 dans la configuration enp3s0, car vous ne voulez pas que le trafic aille par défaut vers cette interface, uniquement s'il est destiné à votre Intranet, configuré via la route statique.

  • Inversement, le wlp2s0 ne nécessite aucune route statique, car une passerelle par défaut y est associée, ce qui est suffisant.

  • Vous n'avez pas besoin de tables de routage ni de règles de routage. Il vous suffit de configurer une route statique (ou quelques routes statiques) pour couvrir les adresses internes de votre Intranet et les acheminer via l'adresse IP de la passerelle de ce réseau. vous dirige vers les autres sous-réseaux auxquels vous n'êtes pas directement connecté.

Veuillez noter que cette configuration dépend en partie de ce que votre serveur DHCP du réseau interne met à votre disposition, tel que votre interface se trouve dans 10.185./ 24 réseau et que 10.185.0.1 est la passerelle que vous pouvez utiliser dans cette interface ... Pour cette raison, une meilleure configuration consisterait peut-être à installer le serveur DHCP dans votre Intranet. Poussez les routes statiques (au lieu de les configurer dans netplan. ) Ainsi, si l’intranet est reconfiguré, par exemple pour modifier l’adresse IP de la passerelle, ou peut-être étendu pour inclure d’autres plages privées RFC1819, seul le serveur DHCP doit être reconfiguré et pas tout le reste ...

Mais si le serveur DHCP est hors de votre contrôle, alors cette configuration peut être acceptable, en supposant que le réseau interne ne soit pas reconfiguré trop souvent pour que l'adresse IP de la passerelle change. Vous voudrez peut-être envisager d’ajouter des itinéraires statiques à toutes les gammes RFC1918, car ceux-ci ne seront pas valides sur Internet et ne pourront donc être rendus valides que sur l’intranet:

routes:
- to: 10.0.0.0/8
  via: 10.185.0.1
- to: 172.16.0.0/12
  via: 10.185.0.1
- to: 192.168.0.0/16
  via: 10.185.0.1

J'espère que ça t'as aidé!

6
filbranden