Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

pb routage avanc=c3=a9=2c pas la bonne connexion dans netstat

1 réponse
Avatar
Jérémy PREGO
bonjour,

tout d'abord d=C3=A9sol=C3=A9 pour ce titre un peu bizarre, mais je ne sa=
is pas=20
comment d=C3=A9crire =C3=A7a mieux :(

je m'explique.

une debian stretch sur laquelle je fais du routage avanc=C3=A9, donc j'ai=
=20
deux interfaces.

eth0, 192.168.56.6/24 (par d=C3=A9faut)
eth1, 192.168.8.100/24

dans cette exemple, je redirige le port tcp 80 en destination vers eth1=20
avec iptables et le marquage de paquet. aucun souci pour =C3=A7a, =C3=A7a=
=20
fonctionne bien, =C3=A7a sort bien par eth1. Mais il y a un mais, c'est q=
ue=20
dans netstat, =C3=A7a affiche la connexion =C3=A9tablie=C2=A0 par eth0, d=
onc, si pour=20
n'importe quel raison eth0 tombe, la connexion se r=C3=A9initialise ...

comment faire pour que =C3=A7a passe bien par eth1 d=C3=A8s l'=C3=A9tabli=
ssement de la=20
connexion ? est-ce que c'est possible d'ailleurs dans cette configuration=
?

merci d'avance !

jerem

voil=C3=A0 ce que je fais pour faire mon routage:

root@debian:~# netstat -antp |grep 46.105
tcp=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 0=C2=A0=C2=A0=C2=A0=C2=A0=C2=
=A0 0 192.168.56.6:32928=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 46.105.x.x:80 ESTA=
BLISHED=20
983/wget
root@debian:~# cat route.sh
#!/bin/bash

ip rule add fwmark 0x1 table 100

iptables -t mangle -A OUTPUT=C2=A0 -p tcp --dport 80 -j MARK --set-mark 0=
x1

ip -4 route add default via 192.168.8.1 dev usb4g-1 table 100
ip rule add from 192.168.8.100 table 100

root@debian:~#

1 réponse

Avatar
Pascal Hambourg
Le 18/03/2018 à 04:47, Jérémy PREGO a écrit :
eth0, 192.168.56.6/24 (par défaut)
eth1, 192.168.8.100/24
dans cette exemple, je redirige le port tcp 80 en destination vers eth1
avec iptables et le marquage de paquet. aucun souci pour ça, ça
fonctionne bien, ça sort bien par eth1. Mais il y a un mais, c'est que
dans netstat, ça affiche la connexion établie  par eth0, donc, si pour
n'importe quel raison eth0 tombe, la connexion se réinitialise ...

Fais en sorte que eth0 ne tombe pas. Par exemple avec une configuration
IP statique.
comment faire pour que ça passe bien par eth1 dès l'établissement de la
connexion ? est-ce que c'est possible d'ailleurs dans cette configuration ?

Ce n'est pas possible dans cette configuration. Le marquage de paquet
par iptables ne peut avoir lieu que lorsque le paquet a déjà été généré,
donc après que l'interface de sortie et l'adresse source ont déjà été
déterminées par la décision de routage initiale.
voilà ce que je fais pour faire mon routage:
:~# netstat -antp |grep 46.105
tcp        0      0 192.168.56.6:32928      46.105.x.x:80 ESTABLISHED
983/wget
:~# cat route.sh
#!/bin/bash
ip rule add fwmark 0x1 table 100
iptables -t mangle -A OUTPUT  -p tcp --dport 80 -j MARK --set-mark 0x1
ip -4 route add default via 192.168.8.1 dev usb4g-1 table 100
ip rule add from 192.168.8.100 table 100

Tu n'as pas aussi une règle iptables SNAT ou MASQUERADE ?