Соединение двух сетевых интерфейсов в Ubuntu Linux 12.10 и возможность доступа к нему с этой машины
Хорошо, у меня уже было, но вот сделка. У меня есть 7 машин, подключенных вот так:
[5 рабочих станций]<--->Маршрутизатор ServerPC<---->MAINPC<---->
К вашему сведению, не беспокойтесь о рабочих станциях, все они работают нормально... маршрутизатор подключается к кабельному модему для доступа в Интернет.
теперь у MAINPC есть Ubuntu 12.10, а ранее у меня были две карты. Это было в Windows XP, кстати... Теперь я скачал и установил bridge-utils, моя сеть настроена так (когда она работала)
ServerPC:
IP ADDRESS: 192.168.2.101
DNS: 192.168.2.1
GATEWAY 192.168.2.1
NETMASK:255.255.255.0
MAINPC:
IP ADDRESS: 192.168.2.114
DNS: 192.168.2.1 Secondary DNS: 192.168.2.101
GATEWAY: 192.168.2.1
NETMASK: 255.255.255.0
маршрутизатор находится на 192.168.2.1, я использую статические IP-адреса, потому что ServerPC является контроллером домена, к нему подключено 5 других рабочих станций, все из которых используют ту же сеть 192.168.2.x.... но в то время я беспокоился только о мост моего главного компьютера снова работает, все остальное не трогать.
Я следовал многим учебным пособиям по этому, верхнему и нижнему уровням по всему Интернету, и в итоге получил файл /etc/network/interfaces, похожий на этот:
auto lo
iface lo inet loopback
#iface eth0 inet manual
#iface eth1 inet manual # <-- didnt seem to make a difference, it was suggested by some other tutorial
auto br0
iface br0 inet static
address 192.168.2.114
netmask 255.255.255.0
network 192.168.2.0
gateway 192.168.2.1
dns-nameservers 192.168.2.1 192.168.2.101
broadcast 192.168.2.255
bridge_ports all
--- вот и сейчас, этот мост работает, ВСЕ остальные 6 машин (сервер, 5 других рабочих станций) имеют доступ к Интернету и могут видеть мой основной ПК, мой основной компьютер может видеть другие машины и рабочие станции, даже маршрутизатор (192.168.2.1) отвечает на пинг. НО, если я пытаюсь что-то пропинговать в интернете, например, google.com, я получаю сообщение об ошибке:
Из ubuntu.local (192.168.2.114) icmp-seq=5 Целевой хост недоступен
Я попытался поменять устройства (eth0 на eth1 и наоборот), и это не имеет значения, я могу разрешить интернет-адреса, просто не могу подключиться к ним, но все остальные могут.
Прежде чем ответить, пожалуйста, имейте в виду, что я не ищу альтернативу мостовому соединению, я не могу использовать NAT или любой другой странный брандмауэр... поэтому, если вы не можете сказать мне, как ответить на этот вопрос, я действительно не хочу никаких "альтернативные предложения" без обид.. спасибо:)
1 ответ
Я бы сохранила твой iface eth* inet manual
линий, просто чтобы не допустить NetworkManager (и я бы также перезапустил его после /etc/network/interfaces
изменить, или лучше: остановить это).
Также, bridge_ports all
не очень хорошая идея. Он действительно соединяет все, что выглядит как интерфейс Ethernet, и иногда пропускает тот, который вам нужен, потому что фильтрует список интерфейсов с помощью регулярных выражений. Лучше всего точно указать, какой порт следует использовать.
Для отладки вашей настройки вы можете использовать следующие команды:
Вывести новую информацию о настроенных интерфейсах и IP-адресах:
ip addr
Ищите разделы "master": порты моста должны иметь интерфейс моста как master. (поскольку технически brctl и bridge-utils используют античные интерфейсы ядра, то же самое может быть достигнуто с помощью
ip link
)Выведите все, что может быть напечатано о таблицах маршрутизации (кроме базы данных политики маршрутизации):
routel
Напечатайте состояние таблицы ARP (для таблицы ND добавьте
-6
):ip neigh