
Tengo un problema. En primer lugar, quiero configurar un servidor en Ubuntu 14.04. Tengo 2 interfaces: eth0 para servidor dhcp y eth1 para conexión a Internet. Pero si me conecto a dos redes al mismo tiempo, no hay internet en la PC. Entonces tengo que elegir entre servidor e Internet. Eso es terrible, ¿alguien puede decirme cómo cerrar este problema?
/etc/red/interfaces:
auto lo eth0 eth1
iface lo inet loopback
iface eth0 inet static
address 172.16.1.100
netmask 255.255.255.0
broadcast 172.16.1.255
gateway 172.16.1.254
salidas de ruta sudo:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
default 192.168.0.1 0.0.0.0 UG 0 0 0 eth1
192.168.0.0 * 255.255.255.0 U 1 0 0 eth1
UPD: salidas ifconfig:
eth0 Link encap:Ethernet HWaddr 90:e6:ba:46:1d:50
inet6 addr: fe80::92e6:baff:fe46:1d50/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:1110 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:184287 (184.2 KB)
eth1 Link encap:Ethernet HWaddr 00:04:75:98:5f:da
inet addr:192.168.0.101 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::204:75ff:fe98:5fda/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:14498 errors:0 dropped:0 overruns:2 frame:0
TX packets:13096 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:9710708 (9.7 MB) TX bytes:1840400 (1.8 MB)
Interrupt:18 Base address:0x4c00
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:4398 errors:0 dropped:0 overruns:0 frame:0
TX packets:4398 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:527890 (527.8 KB) TX bytes:527890 (527.8 KB)
Respuesta1
Al configurar la salida ifconfig
y los comentarios dados a mi primera respuesta, creo que el problema está relacionado con la forma en que configura sus NIC en /etc/network/interfaces
.
Como no tienes ninguna configuración específica paraeth1en /etc/network/interfaces
, supongo que su módem le está dando a su servidor la información de IP a través de DHCP. Según el route
resultado, su puerta de enlace predeterminada apunta al módem y luego a Internet.
Pero en su /etc/network/interfaces
expediente para eleth0También tiene configurada una puerta de enlace predeterminada (declaración gateway 172.16.1.254
).
No puede tener dos puertas de enlace predeterminadas en un sistema. La asignación de la puerta de enlace predeterminada eneth1desactivar la configuración estática deeth0, por lo que no existe IP paraeth0en la ifconfig
salida y por qué Internet funciona y la red interna ya no.
Tendrás que eliminar la línea gateway 172.16.1.254
y volver a intentarlo.
Al hacerlo, por supuesto, si tiene más de una subred en la LAN interna ya no podrá acceder a ellas. A menos que configure una ruta estática hacia todas estas subredes en su servidor:
sudo ruta agregar -net ABCD gw 172.16.1.254
puede agregar el route
comando en un script guardado en /etc/network/if-up.d
para ejecutarlo cada vez que se activa una interfaz.
Respuesta2
Por lo que entiendo de tu publicación, te estás conectando a Internet a través deeth1y a su red interna a través deeth0. Y su servidor desempeña entonces el papel de servidor DHCP y puerta de enlace predeterminada para que su PC acceda a Internet.
Primero, en la PC, verifique que hayan recibido correctamente todas las configuraciones de DHCP, incluida la puerta de enlace. Por tu pregunta, asumo que debería ser 172.16.1.100
En segundo lugar, asegúrese de que sueth1está bien conectado a Internet y bien configurado; Obviamente, esto depende de su ISP.
Finalmente, la operación más importante: deberá habilitar el reenvío de IP entre sus dos interfaces en el servidor. Sin esto, el paquete no se enrutará entre su PC e Internet:
Configuración manual :
sudo eco 1 > /proc/sys/net/ipv4/ip_forward
Para que el indicador de reenvío de IP se configure automáticamente en el momento del arranque, descomente la línea #net.ipv4.ip_forward=1
en/etc/sysctl.conf
También deberá asegurarse de que no haya reglas de firewall de IPtables que bloqueen el tráfico. Hacer :
iptables-L-n
para obtener una lista de reglas, si las hubiera. Primero probaría esta configuración con todas las reglas de firewall deshabilitadas:
iptables-F
Respuesta3
Tuve un problema similar, pero mi archivo de interfaces estaba vacío así:
# The loopback network interface
auto lo
iface lo inet loopback
Logré solucionar el problema moviendo/eliminando el archivo de conexión por cable encontrado:
/etc/NetworkManager/system-connections/Wired connection 1
Después de reiniciar, pude conectarme a ambas redes.