J'ai un problème avec iP itinéraire Ajouter. Étonnamment, je peux ajouter la route puis le changer, mais je ne peux pas l'ajouter directement:
# ip route add 192.168.0.0/16 via 192.168.255.254 src 192.168.1.101
RTNETLINK answers: No such process
mais:
# ip route add 192.168.0.0/16 dev eth0
# ip route change 192.168.0.0/16 via 192.168.255.254 src 192.168.1.101
Mon fichier d'interfaces est:
iface lo inet loopback
auto eth0
iface eth0 inet static
address 178.xxx.xxx.xxx
netmask 255.255.255.192
network 178.xxx.xxx.xxx
broadcast 178.xxx.xxx.xxx
gateway 178.xxx.xxx.xxx
auto eth0:1
iface eth0:1 inet static
address 192.168.1.101
netmask 255.255.0.0
Je suis un peu perdu que je dois dire. Je vais bien avec l'ajout, mais il n'est pas satisfaisant de ne pas comprendre pourquoi cela fonctionne en deux étapes et non directement. Je lisais des pages d'homme après les pages de l'homme sans compréhension.
mis à jour à l'aide des réponses :
J'ai maintenant une passerelle sur eth0
et eth0:0
, mais comme je veux tout mon trafic sauf le 192.168.0.0/16
Pour être marqué comme venant de mon 178.xxx.xxx.xxx
Adresse, j'ai ajouté une règle de routage. Peut-être avoir eth0
avec le 192.168.1.101
IP et ensuite le 178.xxx.xxx.xxx
IP sur eth0:0
fonctionnerait sans règne de routage, mais cela va ici:
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 178.xxx.xxx.131
netmask 255.255.255.192
network 178.xxx.xxx.128
broadcast 178.xxx.xxx.191
gateway 178.xxx.xxx.190
up /sbin/ip route add default via 178.xxx.xxx.190 dev eth0 table 125
up /sbin/ip rule add from 178.xxx.xxx.128/26 table 125
post-down /sbin/ip route del default via 178.xxx.xxx.190 dev eth0 table 125
post-down /sbin/ip rule del from 178.xxx.xxx.128/26 table 125
auto eth0:0
iface eth0:0 inet static
address 192.168.1.101
netmask 255.255.0.0
gateway 192.168.255.254
J'ai aussi désactivé rp_filter
:
echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter
Merci pour ton aide!
Selon votre fichier d'interfaces, vous êtes déjà dans le réseau 192.168.0.0/16, vous ne devez donc pas avoir besoin d'une passerelle sur ce réseau.
Si j'adore mes résultats pour votre configuration IP (je suis sur un 192.168.x.0/24):
Route IP $ sudo Add 192.168.0.0/16 VIA 192.168.255.254 SRC 192.168.1.101
Je reçois
Rtnetlink réponses: aucun tel processus
Mais
Route IP $ sudo Add 192.168.0.0/16 VIA 192.168.1.254 SRC 192.168.1.101
travaux. Je soupçonne que c'est que le 192.168.255.254 ne figure pas sur votre sous-réseau local ou une route connue, vous avez donc besoin d'un itinéraire d'abord.
Comme d'autres ont déclaré que votre adresse IP sur Eth0: 1 de 192.168.1.101/16 signifie que vous avez déjà une route statique pour ce sous-réseau. On dirait que vous devez ajouter une passerelle pour cette interface pointant vers 192.168.255.254.
Je sais que c'est un peu en retard, mais j'aimerais aussi clarifier ce qui est "itinéraire". Tu as dit :
Je veux tout mon trafic, à l'exception du 192.168.0.0/16 pour être marqué comme venant de mon adresse 178.xxx.xxx.xxx
la commande route vous permet de déterminer un itinéraire basé sur une destination, non sur une source. Vous devez configurer vos services pour utiliser une adresse IP en fonction de la passerelle que vous souhaitez utiliser. Comme Mathias Weidner a dit, vous n'avez pas besoin d'une passerelle puisque vous êtes directement connecté (même sous-réseau = pas de routage)