У меня проблема. Прежде всего, я хочу настроить сервер на Ubuntu 14.04. У меня есть 2 интерфейса: eth0 для сервера DHCP и eth1 для подключения к интернету. Но если я подключусь к двум сетям одновременно, на ПК не будет интернета. Поэтому мне приходится выбирать между сервером и интернетом. Это ужасно, может кто-нибудь сказать мне, как закрыть эту проблему?
/ etc / network / 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
sudo route выводит:
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: Выводы 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)
Конфигурирование вывода ifconfig
и комментарии, данные моему первому ответу, я думаю, что проблема связана со способом, в котором Вы настраиваете свой NIC /etc/network/interfaces
.
Поскольку у Вас нет определенной конфигурации для eth1 в /etc/network/interfaces
, Я предполагаю, что Ваш модем дает Вашему серверу информацию о IP через DHCP. Согласно route
ouput, Вы получаете свой шлюз по умолчанию, указывающий на модем так к Интернету.
Но на Вашем /etc/network/interfaces
файл для eth0 у Вас есть также настроенный шлюз по умолчанию (оператор gateway 172.16.1.254
).
У Вас не может быть двух шлюзов по умолчанию в системе. Присвоение шлюза по умолчанию на eth1 отключает статическую конфигурацию eth0, причина, почему нет никакого IP для eth0 в ifconfig
вывод и почему Интернет не работает и внутренняя сеть больше.
Необходимо будет удалить строку gateway 172.16.1.254
и попробуйте еще раз.
Таким образом, конечно, если у Вас есть больше чем одна подсеть на внутренней LAN, Вы не сможете достигнуть их больше. Если Вы не настраиваете статический маршрут ко всем этим подсетям на Вашем сервере:
маршрут sudo добавляет - сетевой A.B.C.D gw 172.16.1.254
можно добавить route
команда в сценарии, сохраненном под /etc/network/if-up.d
чтобы быть выполненным каждый раз, интерфейс повышается.
Из того, что я понимаю Вашего сообщения, Вы соединяетесь с Интернетом через eth1 и с Вашей внутренней сетью через eth0. И Ваш сервер затем играет роль сервера DHCP и шлюза по умолчанию для Вашего ПК для движения Интернета.
Во-первых, на ПК, проверьте, что они получили правильно все настройки DHCP, включая шлюз. От Вашего вопроса я предполагаю, что это должно быть 172.16.1.100
Во-вторых, убедитесь, что Ваш eth1 хорошо подключен к Интернету и хорошо настроен; это, очевидно, в зависимости от Вашего ISP.
Наконец, самая важная операция, необходимо будет включить передачу IP между двумя интерфейсами на сервере. Без этого пакет не будет направлен между Вашим ПК и Интернет:
Ручная установка:
sudo отзываются эхом 1>/proc/sys/net/ipv4/ip_forward
Чтобы иметь IP вперед, флаг автоматически устанавливает во время начальной загрузки, не комментирует строка #net.ipv4.ip_forward=1
в /etc/sysctl.conf
Необходимо будет также удостовериться, что нет никаких правил брандмауэра IPtables того блока трафик. Сделайте:
iptables-L-n
получить список правил если таковые имеются. Я сначала попробовал бы эту установку всеми отключенными правилами брандмауэра:
iptables-F
У меня была подобная проблема, но мой файл интерфейсов был пуст как это:
# The loopback network interface
auto lo
iface lo inet loopback
Мне удалось устранить проблему путем перемещения/удаления найденного файла Проводного соединения: /etc/NetworkManager/system-connections/Wired connection 1
После перезагрузки, смог соединиться с обеими сетями.