![]() |
| |||
| En todos los ejemplos que he visto en google y en la pagina de http://www.lartc.com/ se refiere a un ordenador con tres tarjetas de red, una para cada conexiones y una tercera para la red interna. Se marcan los paquetes dependiendo de la Interfaz de origen iptables -t mangle -A PREROUTING -i eth0 -p tcp --dport 80 -j MARK -- set-mark 1 iptables -t mangle -A PREROUTING -i eth1 -p tcp --dport 80 -j MARK -- set-mark 2 Ahora yo no tengo un solo ordenador con dos conexiones, si no que son dos ordenadores con una conexion cada una. Lo que deseo es que se pueda acceder a un servidor de un tercer ordenador. Tengo: Ordenador A eth0 conexion a internet 10.60.17.2 gw 10.60.17.1 con su correspondiente IP publica en internet eth1 conexin a la red internet 10.0.0.1 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 10.0.0.3:80 Ordenador B eth0 conexion a internet 10.60.2.2 gw 10.60.2.1 con su correspondiente IP publica en internet eth1 conexin a la red internet 10.0.0.2 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 10.0.0.3:80 Ordenador C eth0 conexin a la red internet 10.0.0.3 C tiene como puerta de enlace predeterminada a ordenador A Si accedes desde internet a Ordenador/Conexion A este por medio del DNAT accedes C, y al tener como puerta de enlace predeterminada A, vuelve y funciona. Si accedes desde internet a Ordenador/Conexion B este por medio del DNAT accede a C, pero sale por A, con lo que el paquete se pierde. Segun he leido tendria que marcar los paquetes para luego reenviarlos por la Interfaz que han llegado, pero en C ambos paquetes han llegado por eth0. He provado a marcarlos en A y en B y luego desde C crear dos rutas cada una con su gw pero tampoco he sabido. ¿Lo que quiero hacer es posible? Conoceis algun ejemplo donde lo expliquen, ya que todos los que encuentro es un solo ordenador con tres tarjetas de red. |
| | ||||
| ||||
| |
| |||
| -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 "jm.jimenez.nospam.ucar***gmail.com" <jm.jimenez.nospam.ucar***gmail.com> writes: > ¿Lo que quiero hacer es posible? Conoceis algun ejemplo donde lo > expliquen, ya que todos los que encuentro es un solo ordenador con > tres tarjetas de red. Es posible si en C usas dos direcciones IP diferentes (sobre la misma única tarjeta de red que tienes ahora). En general necesitarás tantas direcciones IP diferentes como líneas de 'retorno' diferentes tengas. Las marcas de los paquetes en A y B son sólo internas a ellos y no llegan a C nunca, por lo que como bien has visto, no funciona. Sin embargo, si en C usas dos direcciones IP y haces que apache (o el servicio que sea) escuche en las dos, entonces se puede. El truco en este caso es usar iproute2 y hacer enrutamiento por origen (desde que IP enviamos los paquetes de respuesta) en lugar de destino (a donde los queremos enviar). Supongamos para el ejemplo que las direcciones IP que vamos a usar en C son 10.0.0.3 y 10.0.0.4, y que las vamos a asignar a la tarjeta eth0. Vamos a usar la 10.0.0.3 para recibir y devolver el tráfico a través del equipoA, y la 10.0.04 para recibir y devolver el tráfico a través del equipoB. Con algo como lo siguiente te debería funcionar: ip address flush dev eth0 ip address add 10.0.0.3/24 dev eth0 ip address add 10.0.0.4/24 dev eth0 echo '1 equipoA' >> /etc/iproute2/rt_tables echo '2 equipoB' >> /etc/iproute2/rt_tables ip rule add from 10.0.0.3 table equipoA ip route add default via 10.0.0.1 table equipoA ip rule add from 10.0.0.4 table equipoB ip route add default via 10.0.0.1 table equipoB ip route flush cache Saludos. Iñaki. - -- School of Management Mondragon University 20560 Oñati - Spain +34 943 718009 (ext. 225) GPG Key available at public keyservers -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) Comment: Processed by Mailcrypt and GPG iD8DBQFHoPANRgC43oKhB3QRAgMGAKDJOfmaTi3qrXgDExqaHT qSYHE0uwCg4+MV KmcThADNw86KLzZageME6a4= =E8iq -----END PGP SIGNATURE----- |
| |||
| -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 "jm.jimenez.nospam.ucar***gmail.com" <jm.jimenez.nospam.ucar***gmail.com> writes: > ¿Lo que quiero hacer es posible? Conoceis algun ejemplo donde lo > expliquen, ya que todos los que encuentro es un solo ordenador con > tres tarjetas de red. Es posible si en C usas dos direcciones IP diferentes (sobre la misma única tarjeta de red que tienes ahora). En general necesitarás tantas direcciones IP diferentes como líneas de 'retorno' diferentes tengas. Las marcas de los paquetes en A y B son sólo internas a ellos y no llegan a C nunca, por lo que como bien has visto, no funciona. Sin embargo, si en C usas dos direcciones IP y haces que apache (o el servicio que sea) escuche en las dos, entonces se puede. El truco en este caso es usar iproute2 y hacer enrutamiento por origen (desde que IP enviamos los paquetes de respuesta) en lugar de destino (a donde los queremos enviar). Supongamos para el ejemplo que las direcciones IP que vamos a usar en C son 10.0.0.3 y 10.0.0.4, y que las vamos a asignar a la tarjeta eth0. Vamos a usar la 10.0.0.3 para recibir y devolver el tráfico a través del equipoA, y la 10.0.04 para recibir y devolver el tráfico a través del equipoB. Con algo como lo siguiente te debería funcionar: ip address flush dev eth0 ip address add 10.0.0.3/24 dev eth0 ip address add 10.0.0.4/24 dev eth0 echo '1 equipoA' >> /etc/iproute2/rt_tables echo '2 equipoB' >> /etc/iproute2/rt_tables ip rule add from 10.0.0.3 table equipoA ip route add default via 10.0.0.1 table equipoA ip rule add from 10.0.0.4 table equipoB ip route add default via 10.0.0.1 table equipoB ip route flush cache Saludos. Iñaki. - -- School of Management Mondragon University 20560 Oñati - Spain +34 943 718009 (ext. 225) GPG Key available at public keyservers -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) Comment: Processed by Mailcrypt and GPG iD8DBQFHoPANRgC43oKhB3QRAgMGAKDJOfmaTi3qrXgDExqaHT qSYHE0uwCg4+MV KmcThADNw86KLzZageME6a4= =E8iq -----END PGP SIGNATURE----- |
| |||
| -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 "jm.jimenez.nospam.ucar***gmail.com" <jm.jimenez.nospam.ucar***gmail.com> writes: > ¿Lo que quiero hacer es posible? Conoceis algun ejemplo donde lo > expliquen, ya que todos los que encuentro es un solo ordenador con > tres tarjetas de red. Es posible si en C usas dos direcciones IP diferentes (sobre la misma única tarjeta de red que tienes ahora). En general necesitarás tantas direcciones IP diferentes como líneas de 'retorno' diferentes tengas. Las marcas de los paquetes en A y B son sólo internas a ellos y no llegan a C nunca, por lo que como bien has visto, no funciona. Sin embargo, si en C usas dos direcciones IP y haces que apache (o el servicio que sea) escuche en las dos, entonces se puede. El truco en este caso es usar iproute2 y hacer enrutamiento por origen (desde que IP enviamos los paquetes de respuesta) en lugar de destino (a donde los queremos enviar). Supongamos para el ejemplo que las direcciones IP que vamos a usar en C son 10.0.0.3 y 10.0.0.4, y que las vamos a asignar a la tarjeta eth0. Vamos a usar la 10.0.0.3 para recibir y devolver el tráfico a través del equipoA, y la 10.0.04 para recibir y devolver el tráfico a través del equipoB. Con algo como lo siguiente te debería funcionar: ip address flush dev eth0 ip address add 10.0.0.3/24 dev eth0 ip address add 10.0.0.4/24 dev eth0 echo '1 equipoA' >> /etc/iproute2/rt_tables echo '2 equipoB' >> /etc/iproute2/rt_tables ip rule add from 10.0.0.3 table equipoA ip route add default via 10.0.0.1 table equipoA ip rule add from 10.0.0.4 table equipoB ip route add default via 10.0.0.1 table equipoB ip route flush cache Saludos. Iñaki. - -- School of Management Mondragon University 20560 Oñati - Spain +34 943 718009 (ext. 225) GPG Key available at public keyservers -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) Comment: Processed by Mailcrypt and GPG iD8DBQFHoPANRgC43oKhB3QRAgMGAKDJOfmaTi3qrXgDExqaHT qSYHE0uwCg4+MV KmcThADNw86KLzZageME6a4= =E8iq -----END PGP SIGNATURE----- |
| |||
| -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 "jm.jimenez.nospam.ucar***gmail.com" <jm.jimenez.nospam.ucar***gmail.com> writes: > ¿Lo que quiero hacer es posible? Conoceis algun ejemplo donde lo > expliquen, ya que todos los que encuentro es un solo ordenador con > tres tarjetas de red. Es posible si en C usas dos direcciones IP diferentes (sobre la misma única tarjeta de red que tienes ahora). En general necesitarás tantas direcciones IP diferentes como líneas de 'retorno' diferentes tengas. Las marcas de los paquetes en A y B son sólo internas a ellos y no llegan a C nunca, por lo que como bien has visto, no funciona. Sin embargo, si en C usas dos direcciones IP y haces que apache (o el servicio que sea) escuche en las dos, entonces se puede. El truco en este caso es usar iproute2 y hacer enrutamiento por origen (desde que IP enviamos los paquetes de respuesta) en lugar de destino (a donde los queremos enviar). Supongamos para el ejemplo que las direcciones IP que vamos a usar en C son 10.0.0.3 y 10.0.0.4, y que las vamos a asignar a la tarjeta eth0. Vamos a usar la 10.0.0.3 para recibir y devolver el tráfico a través del equipoA, y la 10.0.04 para recibir y devolver el tráfico a través del equipoB. Con algo como lo siguiente te debería funcionar: ip address flush dev eth0 ip address add 10.0.0.3/24 dev eth0 ip address add 10.0.0.4/24 dev eth0 echo '1 equipoA' >> /etc/iproute2/rt_tables echo '2 equipoB' >> /etc/iproute2/rt_tables ip rule add from 10.0.0.3 table equipoA ip route add default via 10.0.0.1 table equipoA ip rule add from 10.0.0.4 table equipoB ip route add default via 10.0.0.1 table equipoB ip route flush cache Saludos. Iñaki. - -- School of Management Mondragon University 20560 Oñati - Spain +34 943 718009 (ext. 225) GPG Key available at public keyservers -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) Comment: Processed by Mailcrypt and GPG iD8DBQFHoPANRgC43oKhB3QRAgMGAKDJOfmaTi3qrXgDExqaHT qSYHE0uwCg4+MV KmcThADNw86KLzZageME6a4= =E8iq -----END PGP SIGNATURE----- |
| |||
| -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 "jm.jimenez.nospam.ucar***gmail.com" <jm.jimenez.nospam.ucar***gmail.com> writes: > ¿Lo que quiero hacer es posible? Conoceis algun ejemplo donde lo > expliquen, ya que todos los que encuentro es un solo ordenador con > tres tarjetas de red. Es posible si en C usas dos direcciones IP diferentes (sobre la misma única tarjeta de red que tienes ahora). En general necesitarás tantas direcciones IP diferentes como líneas de 'retorno' diferentes tengas. Las marcas de los paquetes en A y B son sólo internas a ellos y no llegan a C nunca, por lo que como bien has visto, no funciona. Sin embargo, si en C usas dos direcciones IP y haces que apache (o el servicio que sea) escuche en las dos, entonces se puede. El truco en este caso es usar iproute2 y hacer enrutamiento por origen (desde que IP enviamos los paquetes de respuesta) en lugar de destino (a donde los queremos enviar). Supongamos para el ejemplo que las direcciones IP que vamos a usar en C son 10.0.0.3 y 10.0.0.4, y que las vamos a asignar a la tarjeta eth0. Vamos a usar la 10.0.0.3 para recibir y devolver el tráfico a través del equipoA, y la 10.0.04 para recibir y devolver el tráfico a través del equipoB. Con algo como lo siguiente te debería funcionar: ip address flush dev eth0 ip address add 10.0.0.3/24 dev eth0 ip address add 10.0.0.4/24 dev eth0 echo '1 equipoA' >> /etc/iproute2/rt_tables echo '2 equipoB' >> /etc/iproute2/rt_tables ip rule add from 10.0.0.3 table equipoA ip route add default via 10.0.0.1 table equipoA ip rule add from 10.0.0.4 table equipoB ip route add default via 10.0.0.1 table equipoB ip route flush cache Saludos. Iñaki. - -- School of Management Mondragon University 20560 Oñati - Spain +34 943 718009 (ext. 225) GPG Key available at public keyservers -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) Comment: Processed by Mailcrypt and GPG iD8DBQFHoPANRgC43oKhB3QRAgMGAKDJOfmaTi3qrXgDExqaHT qSYHE0uwCg4+MV KmcThADNw86KLzZageME6a4= =E8iq -----END PGP SIGNATURE----- |
| |||
| -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 "jm.jimenez.nospam.ucar***gmail.com" <jm.jimenez.nospam.ucar***gmail.com> writes: > ¿Lo que quiero hacer es posible? Conoceis algun ejemplo donde lo > expliquen, ya que todos los que encuentro es un solo ordenador con > tres tarjetas de red. Es posible si en C usas dos direcciones IP diferentes (sobre la misma única tarjeta de red que tienes ahora). En general necesitarás tantas direcciones IP diferentes como líneas de 'retorno' diferentes tengas. Las marcas de los paquetes en A y B son sólo internas a ellos y no llegan a C nunca, por lo que como bien has visto, no funciona. Sin embargo, si en C usas dos direcciones IP y haces que apache (o el servicio que sea) escuche en las dos, entonces se puede. El truco en este caso es usar iproute2 y hacer enrutamiento por origen (desde que IP enviamos los paquetes de respuesta) en lugar de destino (a donde los queremos enviar). Supongamos para el ejemplo que las direcciones IP que vamos a usar en C son 10.0.0.3 y 10.0.0.4, y que las vamos a asignar a la tarjeta eth0. Vamos a usar la 10.0.0.3 para recibir y devolver el tráfico a través del equipoA, y la 10.0.04 para recibir y devolver el tráfico a través del equipoB. Con algo como lo siguiente te debería funcionar: ip address flush dev eth0 ip address add 10.0.0.3/24 dev eth0 ip address add 10.0.0.4/24 dev eth0 echo '1 equipoA' >> /etc/iproute2/rt_tables echo '2 equipoB' >> /etc/iproute2/rt_tables ip rule add from 10.0.0.3 table equipoA ip route add default via 10.0.0.1 table equipoA ip rule add from 10.0.0.4 table equipoB ip route add default via 10.0.0.1 table equipoB ip route flush cache Saludos. Iñaki. - -- School of Management Mondragon University 20560 Oñati - Spain +34 943 718009 (ext. 225) GPG Key available at public keyservers -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) Comment: Processed by Mailcrypt and GPG iD8DBQFHoPANRgC43oKhB3QRAgMGAKDJOfmaTi3qrXgDExqaHT qSYHE0uwCg4+MV KmcThADNw86KLzZageME6a4= =E8iq -----END PGP SIGNATURE----- |
| |||
| On 30 ene, 22:45, Ignacio Arenaza <iaren...***eb2ebu.ampr.org> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > "jm.jimenez.nospam.u...***gmail.com" <jm.jimenez.nospam.u...***gmail.com> writes: > > ¿Lo que quiero hacer es posible? Conoceis algun ejemplo donde lo > > expliquen, ya que todos los que encuentro es un solo ordenador con > > tres tarjetas de red. > > Es posible si en C usas dos direcciones IP diferentes (sobre la misma > única tarjeta de red que tienes ahora). En general necesitarás tantas > direcciones IP diferentes como líneas de 'retorno' diferentes tengas. > > Las marcas de los paquetes en A y B son sólo internas a ellos y no > llegan a C nunca, por lo que como bien has visto, no funciona. > > Sin embargo, si en C usas dos direcciones IP y haces que apache (o el > servicio que sea) escuche en las dos, entonces se puede. El truco en > este caso es usar iproute2 y hacer enrutamiento por origen (desde que > IP enviamos los paquetes de respuesta) en lugar de destino (a donde > los queremos enviar). > > Supongamos para el ejemplo que las direcciones IP que vamos a usar en > C son 10.0.0.3 y 10.0.0.4, y que las vamos a asignar a la tarjeta > eth0. Vamos a usar la 10.0.0.3 para recibir y devolver el tráfico a > través del equipoA, y la 10.0.04 para recibir y devolver el tráfico a > través del equipoB. > > Con algo como lo siguiente te debería funcionar: > > ip address flush dev eth0 > ip address add 10.0.0.3/24 dev eth0 > ip address add 10.0.0.4/24 dev eth0 > > echo '1 equipoA' >> /etc/iproute2/rt_tables > echo '2 equipoB' >> /etc/iproute2/rt_tables > > ip rule add from 10.0.0.3 table equipoA > ip route add default via 10.0.0.1 table equipoA > > ip rule add from 10.0.0.4 table equipoB > ip route add default via 10.0.0.1 table equipoB > > ip route flush cache > > Saludos. Iñaki. Algo parecido intente utilizando interfaces virtuales eth0 10.0.0.3 y eth0:0 10.0.0.4, pero no supe. Lo pruebo y te digo, gracias, por tu rápida respuesta. |
| |
| |
| |||
| On 30 ene, 22:45, Ignacio Arenaza <iaren...***eb2ebu.ampr.org> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > "jm.jimenez.nospam.u...***gmail.com" <jm.jimenez.nospam.u...***gmail.com> writes: > > ¿Lo que quiero hacer es posible? Conoceis algun ejemplo donde lo > > expliquen, ya que todos los que encuentro es un solo ordenador con > > tres tarjetas de red. > > Es posible si en C usas dos direcciones IP diferentes (sobre la misma > única tarjeta de red que tienes ahora). En general necesitarás tantas > direcciones IP diferentes como líneas de 'retorno' diferentes tengas. > > Las marcas de los paquetes en A y B son sólo internas a ellos y no > llegan a C nunca, por lo que como bien has visto, no funciona. > > Sin embargo, si en C usas dos direcciones IP y haces que apache (o el > servicio que sea) escuche en las dos, entonces se puede. El truco en > este caso es usar iproute2 y hacer enrutamiento por origen (desde que > IP enviamos los paquetes de respuesta) en lugar de destino (a donde > los queremos enviar). > > Supongamos para el ejemplo que las direcciones IP que vamos a usar en > C son 10.0.0.3 y 10.0.0.4, y que las vamos a asignar a la tarjeta > eth0. Vamos a usar la 10.0.0.3 para recibir y devolver el tráfico a > través del equipoA, y la 10.0.04 para recibir y devolver el tráfico a > través del equipoB. > > Con algo como lo siguiente te debería funcionar: > > ip address flush dev eth0 > ip address add 10.0.0.3/24 dev eth0 > ip address add 10.0.0.4/24 dev eth0 > > echo '1 equipoA' >> /etc/iproute2/rt_tables > echo '2 equipoB' >> /etc/iproute2/rt_tables > > ip rule add from 10.0.0.3 table equipoA > ip route add default via 10.0.0.1 table equipoA > > ip rule add from 10.0.0.4 table equipoB > ip route add default via 10.0.0.1 table equipoB > > ip route flush cache > > Saludos. Iñaki. Algo parecido intente utilizando interfaces virtuales eth0 10.0.0.3 y eth0:0 10.0.0.4, pero no supe. Lo pruebo y te digo, gracias, por tu rápida respuesta. |
| |||
| On 30 ene, 22:45, Ignacio Arenaza <iaren...***eb2ebu.ampr.org> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > "jm.jimenez.nospam.u...***gmail.com" <jm.jimenez.nospam.u...***gmail.com> writes: > > ¿Lo que quiero hacer es posible? Conoceis algun ejemplo donde lo > > expliquen, ya que todos los que encuentro es un solo ordenador con > > tres tarjetas de red. > > Es posible si en C usas dos direcciones IP diferentes (sobre la misma > única tarjeta de red que tienes ahora). En general necesitarás tantas > direcciones IP diferentes como líneas de 'retorno' diferentes tengas. > > Las marcas de los paquetes en A y B son sólo internas a ellos y no > llegan a C nunca, por lo que como bien has visto, no funciona. > > Sin embargo, si en C usas dos direcciones IP y haces que apache (o el > servicio que sea) escuche en las dos, entonces se puede. El truco en > este caso es usar iproute2 y hacer enrutamiento por origen (desde que > IP enviamos los paquetes de respuesta) en lugar de destino (a donde > los queremos enviar). > > Supongamos para el ejemplo que las direcciones IP que vamos a usar en > C son 10.0.0.3 y 10.0.0.4, y que las vamos a asignar a la tarjeta > eth0. Vamos a usar la 10.0.0.3 para recibir y devolver el tráfico a > través del equipoA, y la 10.0.04 para recibir y devolver el tráfico a > través del equipoB. > > Con algo como lo siguiente te debería funcionar: > > ip address flush dev eth0 > ip address add 10.0.0.3/24 dev eth0 > ip address add 10.0.0.4/24 dev eth0 > > echo '1 equipoA' >> /etc/iproute2/rt_tables > echo '2 equipoB' >> /etc/iproute2/rt_tables > > ip rule add from 10.0.0.3 table equipoA > ip route add default via 10.0.0.1 table equipoA > > ip rule add from 10.0.0.4 table equipoB > ip route add default via 10.0.0.1 table equipoB > > ip route flush cache > > Saludos. Iñaki. Algo parecido intente utilizando interfaces virtuales eth0 10.0.0.3 y eth0:0 10.0.0.4, pero no supe. Lo pruebo y te digo, gracias, por tu rápida respuesta. |
![]() |
| Herramientas | |
| Desplegado | |
| |
Temas Similares | ||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Problema de routing | An-100 | Newsgroup es.comp.os.linux.redes | 0 | 30-01-2008 21:16:53 |
| hacer routing | oscar | Newsgroup microsoft.public.es.windows.server.redes | 3 | 13-11-2007 11:17:08 |
| [Info] De Exchange 2K-2K3 Winroute a Exchange 2007 sp1 Routing Log Viewer | Javier Inglés [MS MVP] | Newsgroup microsoft.public.es.win2000 | 0 | 20-09-2007 07:36:01 |
| [Info] De Exchange 2K-2K3 Winroute a Exchange 2007 sp1 Routing Log Viewer | Javier Inglés [MS MVP] | Newsgroup microsoft.public.es.windows.server.redes | 0 | 20-09-2007 07:36:01 |
| 933118 - Network perfomance becames very slow on a Windows Server 2003-based computer if IP packet filtering option is enabled in Routing and Remote Access Service | Fernando Reyes [MS MVP] | Newsgroup microsoft.public.es.windows.server.redes | 0 | 23-04-2007 11:03:33 |