[SemiOT] cual es la IP que usa mi script

peter pablomarmol en gmail.com
Jue Jun 22 12:40:14 CEST 2006


2006/6/22, Chema Cortes <pych3m4 en gmail.com>:
[....]
> ¿Es posible obligar a que conecte con una ip determinada (para
> controlar mejor su tráfico por el firewall)?



Para "forzar" a que use unas direcciones u otras según sea el destino,
y suponiendo un debian "no-prehistórico",  puedes configurar las rutas
asi  (pongo las direcciones de un interface que me queda a mano ... :)

el interface eth1 tiene dos direcciones,  la .88 y la .89

# ip addr show dev eth1
3: eth1: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ieee1394 00:e0:18:00:00:0f:5b:1b brd ff:ff:ff:ff:ff:ff:ff:ff
    inet 192.168.1.88/26 brd 192.168.1.127 scope global eth1
    inet 192.168.1.89/26 scope global secondary eth1

vemos que como la .89 fue la segunda dirección que se le asignó a ese
interface, la toma como secundaria.
Y la ruta está así:

# ip route show dev eth1
192.168.1.64/26 proto kernel  scope link  src 192.168.1.88

al conectar con esa red  usará como direccion origen la .88

---

Supongamos que queremos usar otra dirección cuando conectemos a un
servidor con dirección ".1".   Añadimos una ruta para el host ".1"
especificando el origen a usar:

# ip route add 192.168.1.1/32 dev eth1 src 192.168.1.89

y queda asi:

# ip route show dev eth1
192.168.1.1  scope link  src 192.168.1.89
192.168.1.64/26  proto kernel  scope link  src 192.168.1.88

Para conectar a toda esa red seguirá usando como origen .88,  menos
para la direccion destino .1, que usará .89

---

Tambien podríamos haber hecho el cambio de direccion origen para toda
la red, y no sólo para una dirección en concreto:

# ip route change 192.168.1.64/26 dev eth1 src 192.168.1.89
# ip route show dev eth1
192.168.1.64/26  scope link  src 192.168.1.89



(datos ficticios, en alguno se me puede haber ido la mano...  :)


.




Más información sobre la lista de distribución Python-es