¿Por qué diferentes usuarios obtienen diferentes IP a través de la misma interfaz?

3

En el mismo servidor, en la raíz, obtengo la IP de Internet correcta de la interfaz

root@server:~# curl -s --interface ppp0 ipcheck.com
111.111.111.111root@server:~# 

Sin embargo...

Si no es superusuario, obtengo la ip de la ruta / interfaz predeterminada eth0 o eth1 internet ip en lugar de la ip de internet de ppp0 y eso no es lo que espero.

matrix@server:~$ curl -s --interface ppp0 ipcheck.com
222.222.222.222matrix@server:~$ 

Mi pregunta es ¿por qué diferentes usuarios obtienen diferentes IP / Ruta? Es la misma aplicación, la misma interfaz que he configurado correctamente la ruta ...

En / etc / iproute2 / rt_tables, he agregado

    20      isp1
    30      isp2
    40      ppp0
    50      ppp1
    60      ppp2

Las primeras 3 líneas de la ruta ip:

    default 
        nexthop via 222.222.222.1  dev eth0 weight 1
        nexthop via 222.222.222.2  dev eth1 weight 1
10.200.20.1 dev ppp0  proto kernel  scope link  src 10.200.21.4
10.200.20.1 dev ppp1  proto kernel  scope link  src 10.200.21.9 
10.200.20.1 dev ppp2  proto kernel  scope link  src 10.200.21.7 

regla ip:

0:  from all lookup local 
32761:  from all fwmark 0x60 lookup ppp2 
32762:  from all fwmark 0x50 lookup ppp1
32763:  from all fwmark 0x40 lookup ppp0 
32764:  from all fwmark 0x30 lookup ISP2 
32765:  from all fwmark 0x20 lookup ISP1 
32766:  from all lookup main 
32767:  from all lookup default 

iptables:

    -A PREROUTING -t mangle -i eth0 -m state --state NEW,RELATED,ESTABLISHED -d 222.222.222.222 -j CONNMARK --set-mark 0x20
    -A PREROUTING -t mangle -i eth1 -m state --state NEW,RELATED,ESTABLISHED -d 222.222.222.223 -j CONNMARK --set-mark 0x30
    -A PREROUTING -t mangle -i br0 -m connmark --mark 0x20 -j CONNMARK --restore-mark
    -A PREROUTING -t mangle -i br0 -m connmark --mark 0x30 -j CONNMARK --restore-mark
    -A OUTPUT -t mangle -m state --state ESTABLISHED,RELATED -j CONNMARK --restore-mark
-A PREROUTING -t mangle -i ppp0 -m state --state NEW,RELATED,ESTABLISHED -d 10.200.21.4 -j CONNMARK --set-mark 0x40
-A PREROUTING -t mangle -i br0 -m connmark --mark 0x40 -j CONNMARK --restore-mark
-A PREROUTING -t mangle -i ppp1 -m state --state NEW,RELATED,ESTABLISHED -d 10.200.21.9 -j CONNMARK --set-mark 0x50
-A PREROUTING -t mangle -i br0 -m connmark --mark 0x50 -j CONNMARK --restore-mark
-A PREROUTING -t mangle -i ppp2 -m state --state NEW,RELATED,ESTABLISHED -d 10.200.21.7 -j CONNMARK --set-mark 0x60
-A PREROUTING -t mangle -i br0 -m connmark --mark 0x60 -j CONNMARK --restore-mark

-A OUTPUT -t mangle -m state --state ESTABLISHED,RELATED -j CONNMARK --restore-mark


    -A POSTROUTING -t nat -o eth0 -j MASQUERADE
    -A POSTROUTING -t nat -o eth1 -j MASQUERADE
    -A POSTROUTING -t nat -o ppp+ -j MASQUERADE

    -A FORWARD -i br0 -o eth0 -j ACCEPT
    -A FORWARD -i br0 -o eth1 -j ACCEPT
    -A FORWARD -i br0 -o ppp+ -j ACCEPT
    -A FORWARD -m state -i eth0 -o br0 --state ESTABLISHED,RELATED -j ACCEPT
    -A FORWARD -m state -i eth1 -o br0 --state ESTABLISHED,RELATED -j ACCEPT
    -A FORWARD -m state -i ppp+ -o br0 --state ESTABLISHED,RELATED -j ACCEPT
    -A FORWARD -i br0 -o br0 -j ACCEPT
13ma Matriz
fuente
Sería útil si nos puede decir algo sobre las direcciones IP devueltas, pero (sin tener suficiente para una respuesta) mi primera suposición sería que vincular a una interfaz específica requiere un nivel de acceso que la cuenta de usuario ordinaria no tiene, Pero la raíz tiene.
un CVn
Estoy un poco sorprendido: no tengo un servidor ppp para conectarme, pero con OpenVPN, usando la interfaz virtual tun0para jugar el mismo juego, las direcciones IP devueltas son idénticas.
MariusMatutiae
No puedo encontrar ninguna documentación al respecto, pero, como usuario, no puede configurar la interfaz.
davidbaumann
Proporcione la salida de ip routeyiptables-save
Daniel B
Si alguna de las salidas es incorrecta, díganos cuál y por qué. Si ninguno de los resultados es incorrecto, díganos cuál es el problema real.
David Schwartz el