Jak mogę skonfigurować trwały ip rule
system Linux (w szczególności dystrybucje oparte na Redhat)? Czy nie ma wbudowanej metody? Czy moja jedyna opcja polega na dodawaniu /etc/rc.d/rc.local
lub tworzeniu własnego rc.d
skryptu?
Edycja: Dla wyjaśnienia nie mówię o tym, iptables
ale o ip
narzędziu (które nie wydaje się być znane wielu osobom). W każdym razie reguła, którą próbuję zachować, jest dodawana za pomocą następującego polecenia:
# ip rule add fwmark 1 lookup 100
# ip rule
...
32765: from all fwmark 0x1 lookup 100
...
Jedyne odniesienie, które znalazłem, aby to zrobić, pochodzi z Novell: http://www.novell.com/support/viewContent.do?externalId=7008874&sliceId=1, który zaleca utworzenie rc.d
skryptu
linux
networking
redhat
brent
źródło
źródło
ip rule add fwmark 1 lookup 100
Odpowiedzi:
Jak zwykle spotykam się z odpowiedzią na mój problem wkrótce po zapytaniu :) Znalazłem odpowiedź na http://grokbase.com/t/centos/centos/099bmc07mq/persisting-iproute2-routes-and-rules
W Redhat 5+
/etc/sysconfig/network-scripts/ifup-routes
skrypt obsługujerule-*
pliki. Odpowiedni kod poniżej:Skrypt dla RHEL 6.5 (prawdopodobnie starszy 6+):
źródło
Powyższe stanowi około 3/4 odpowiedzi - brakującym fragmentem jest sposób sformatowania pliku / etc / sysconf / network-scripts / rules-ethX. Musisz także dodać tabele routingu do / etc / iproute2 / rt_tables:
I dodaj plik reguł / etc / sysconfig / network-scripts / rules-eth0:
Pamiętaj, że nazwy tabel muszą być zgodne i rozróżniana jest wielkość liter.
źródło
Uwaga: jeśli używasz priorytetów w tych plikach reguł dla dowolnej reguły, musisz używać priorytetów dla wszystkich reguł. W przeciwnym razie te, które nie mają żadnych priorytetów, zostaną dodane do łańcucha priorytetu 0.
źródło