Comment puis-je configurer une persistante ip rule
sur Linux (en particulier les distributions basées sur Redhat)? N'y a-t-il pas de méthode intégrée? Ma seule option est-elle d'ajouter /etc/rc.d/rc.local
ou de créer mon propre rc.d
script?
Edit: Pour plus de clarté, je ne fais pas référence à iptables
mais à l' ip
outil (que je ne pense pas que beaucoup de gens connaissent). Dans tous les cas, la règle que j'essaie de persister est ajoutée avec la commande suivante:
# ip rule add fwmark 1 lookup 100
# ip rule
...
32765: from all fwmark 0x1 lookup 100
...
La seule référence que j'ai trouvée pour ce faire est de Novell: http://www.novell.com/support/viewContent.do?externalId=7008874&sliceId=1 qui recommande de créer un rc.d
script
linux
networking
redhat
brent
la source
la source
ip rule add fwmark 1 lookup 100
Réponses:
Comme d'habitude, je tombe sur la réponse à mon propre problème peu de temps après avoir demandé :) J'ai trouvé une réponse sur http://grokbase.com/t/centos/centos/099bmc07mq/persisting-iproute2-routes-and-rules
Sur Redhat 5+, le
/etc/sysconfig/network-scripts/ifup-routes
script gère lesrule-*
fichiers. Code pertinent ci-dessous:Script pour RHEL 6.5 (peut-être plus ancien 6+):
la source
Ce qui précède est environ 3/4 de la réponse - la pièce manquante est de savoir comment formater le fichier / etc / sysconf / network-scripts / rule-ethX. Vous devez également ajouter les tables de routage à / etc / iproute2 / rt_tables:
Et ajoutez le fichier de règles / etc / sysconfig / network-scripts / rule-eth0:
Notez que les noms de table doivent correspondre et sont sensibles à la casse.
la source
notez que si vous utilisez des priorités dans ces fichiers de règles pour l'une des règles, vous devez utiliser des priorités pour toutes les règles. Sinon, ceux qui n'ont pas de priorité sont tous ajoutés à la chaîne de priorité 0.
la source