Подключите две сети к одному серверу, используя два его порта Ethernet.

Подключите две сети к одному серверу, используя два его порта Ethernet.

У меня есть две отдельные локальные сети (два маршрутизатора, каждый из которых подключен к своему провайдеру для подключения к Интернету) и сервер с двумя портами Ethernet. На сервере запущена локальная веб-служба, к которой я хотел бы, чтобы обе сети имели доступ.

Могу ли я просто подключить оба порта ethernet сервера к каждому порту маршрутизатора? Какой порт ethernet будет использоваться для подключения к интернету на самом сервере?

Примечание: на сервере установлены Fedora 20 и Apache.

решение1

Вы не указали версию IP и есть ли NAT. Я предполагаю, что каждая локальная сеть находится за NAT и имеет только IPv4.

Подключение двух интерфейсов Ethernet к разным сетям будет работать, пока две LAN используют разные диапазоны IP-адресов. Существует значительный риск того, что обе LAN используют один и тот же диапазон адресов RFC 1918. (RFC 4193 вводит метод, позволяющий избежать таких конфликтов, но он применим только для IPv6.)

Если две локальные сети используют одни и те же IP-адреса, сначала необходимо перенастроить один из маршрутизаторов таким образом, чтобы они больше не использовали конфликтующие адреса.

Убедившись, что две локальные сети используют неконфликтующие адреса, вы можете подключить сервер. Вам следует настроить сервер со статическими IP-адресами на каждом интерфейсе Ethernet. Очевидно, что IP-адрес должен соответствовать локальной сети, к которой он подключен, и ему должен быть назначен IP-адрес, который не входит в диапазон, используемый DHCP.

Каждая локальная сеть имеет шлюз по умолчанию. На сервере вы настраиваете шлюз по умолчанию только на одном из интерфейсов, который будет использоваться для подключения к Интернету. Если хотите, вы можете настроить отдельные маршруты, которые позволят серверу достигать некоторых удаленных пунктов назначения через другой маршрутизатор.

Одно предостережение, которое следует отметить в этой настройке, заключается в том, что клиенты в двух локальных сетях должны будут использовать разные IP-адреса для доступа к серверу. Вы можете обойти это, если сможете настроить статический маршрут на одном из маршрутизаторов.

Например, если маршрутизаторы — 192.168.1.1 и 192.168.2.1, а сервер имеет IP-адреса 192.168.1.2 и 192.168.2.2, вы можете настроить статический маршрут на 192.168.1.1. Этот статический маршрут будет указывать, что для достижения 192.168.2.2 шлюз для использования — 192.168.1.2.

При такой настройке клиенты в обеих локальных сетях смогут подключаться к серверу, используя 192.168.2.2.

решение2

Я не могу добавлять комментарии, но в дополнение к ответу kasperd вы также можете настроить свои соединения в режиме отказоустойчивости или связки. Метод выполнения этого будет отличаться в зависимости от ОС. В случае отказоустойчивости вы бы использовали свой основной путь к Интернету и использовали бы отказоустойчивость только в случае отказа основного (есть некоторые другие более продвинутые вещи, которые вы можете сделать, например, скрипты для проверки задержки, чтобы отключить основной путь, если он превышает пороговое значение) или использовать оба одновременно в случае связанного канала, который по своей сути имеет отказоустойчивость, поскольку он продолжает работать, когда одно из соединений в связке выходит из строя.

Связанный контент