Nie rozumiesz problemu. Nie każdy pakiet jest odpowiedzią i nie każdy pakiet można dopasować do jakiegoś innego pakietu, tak że „taki sam interfejs sieciowy, w jakim się pojawił” ma sens. To, co chcesz zrobić, to wybrać bramę dla pakietu na podstawie jego źródłowego adresu IP.
Nazywa się to routingiem źródłowym lub routingiem zasad. Możesz to zrobić za pomocą prostej iptables
reguły , ale najlepszym sposobem jest skonfigurowanie dwóch tabel routingu, po jednej dla każdego publicznego adresu źródłowego:
Najpierw utwórz dwie tabele (Zastąp <NAME1> i <NAME2> rozsądnymi nazwami dla dwóch dostawców, tak samo jak IP1, DEV1 itd.):
echo 200 <NAME1> >> /etc/iproute2/rt_tables
echo 201 <NAME2> >> /etc/iproute2/rt_tables
Dodaj bramę do każdej tabeli routingu (w razie potrzeby):
ip route add <NET1> dev <DEV1> src <SRC1> table <NAME1>
ip route add <NET2> dev <DEV2> src <SRC2> table <NAME2>
Następnie domyślna trasa:
ip route add default via <IP1> table <NAME1>
ip route add default via <IP2> table <NAME2>
Następnie reguły wyboru tabeli tras na podstawie adresu źródłowego:
ip rule add from <IP1> table <NAME1>
ip rule add from <IP2> table <NAME2>
Aby uzyskać więcej informacji, zobacz Routing dla wielu łączy w górę / dostawców .