Heyho
,
ja, das geht. Das ganze nennt sich "Policy Routing" - du kannst also mit Policies die Routingentscheidungen beeinflussen.
Das kannst du mit dem Tool "ip" steuern.
1) Eine zweite Routingtabelle erstellen
2) Der Routingtabelle einen Default-Gateway zuweisen
3) Eine Regel erstellen, die Pakete, die ins 10.0.0.0/8 Netz gehen sollen, in die zweite Routingtabelle schmeißt.
4) fertig
Was jetzt kommt, schreib ich ungetestet ausm Kopf:
Code:
echo "1 internes-netz" > /etc/iproute2/rt_tables # tabelle mit ID 1 und namen internes-netz zur config adden (bleibt dann persistent)
ip route add default via 10.1.2.1 dev eth0 table internes-netz # defaultgateway zur tabelle adden
ip rule add to 10.0.0.0/8 table internes-netz # pakete, die an 10.0.0.0/8 gerichtet sind in die tabelle schicken
("ip route add" und "ip rule add" musst du nach jedem Reboot erneut ausführen. Kannst du aber als pre-up-Script in deine /etc/network/interfaces eintragen)
Das müsste es gewesen sein. Nochmal kurz zur Erklärung: du erstellst hiermit eine zweite Routingtabelle (und gibst dieser Routingtabelle einen Defaultgateway). Mit "ip rule add" fügst du die Regel hinzu, welche Pakete in diese Routingtabelle reinrutschen sollen.
Es könnte aber noch ein Problem geben, welches du beheben musst. Wenn dein OS ein IP-Paket an die 10.13.37.5 generiert und dafür die IP-Adresse "4.5.6.227" als Sourceaddress reinschreibt, so wirst du deine Antwortpakete wohl wieder auf dem Interface eth0.5 erhalten. Du musst dich also nun darum kümmern, dass deine Programme immer mit der richtigen 10-er IP-Adresse senden, oooooder du richtest auf eth0 ein NAT ein, damit die Pakete immer die richtige IP-Adresse erhalten. Ist allerdings speicherintensiver, obgleich auch nur minimal.
Das könntest du mit iptables erreichen.
Code:
iptables -t nat -A POSTROUTING ! -s 10.0.0.0/8 -d 10.0.0.0/8 -o eth0 -j MASQUERADE
Im Klartext: alle Pakete, die ans 10er Netz gerichtet sind und über eth0 rausgeschickt werden sollen aber eine nicht-10er Adresse als Absenderadresse eingetragen haben, werden genattet. Das müsstet du auch bei jedem Reboot bzw. bei pre-up eintragen.
Soweit alles klar?
-k
Resident Evil 6 erscheint in...
Heute, 15:21 in gulli:news