Могу ли я использовать статические маршруты для выделенного IP через циклы питания?

900
pnongrata

Я пытаюсь настроить среду разработки в моей домашней локальной сети по дешевке. Я приобрел 3 ПК с дополнительной оперативной памятью, чтобы играть роль «серверов», и планирую просто использовать мой маршрутизатор Netgear (беспроводной) между этими 3 «серверами» и моей машиной разработчика (ноутбуком).

Поскольку это не настоящие серверы, я не хочу, чтобы они были включены и работали 24/7/365, поскольку они, вероятно, сломались бы довольно быстро, и у меня просто не было бюджета, чтобы продолжать заменять детали. Поэтому большое ограничение заключается в том, что я должен иметь возможность включать и выключать их почти каждый день. Чтобы добавить к этому, могут быть «карманы» разработки, где я кодирую на несколько дней, отключаю их, чтобы сэкономить электроэнергию и оборудование, и тогда я не смогу вернуться к проекту до выходных. Я упоминаю об этом только в том случае, если у моего роутера есть какой-то кеш с явным TTL и т. Д.

Насколько я понимаю сеть, каждый раз, когда я включаю эти машины, маршрутизатор назначает им новый IP. Это сделает постоянную разработку кошмаром для меня, потому что и мое приложение, и мои сценарии сборки должны ссылаться на каждый из трех серверов на протяжении всего их жизненного цикла. Например, один сервер будет моим репозиторием Apache Ivy и Subversion, поэтому мой сборочный скрипт Ant будет нуждаться в ссылках http://<build-server-ip>/svn/my-app/trunkи т. Д. Если <build-server-ip>каждый раз, когда я отказываюсь от сервера, он постоянно меняется, это сделает разработку очень непостоянной и болезненной.

Мне интересно, могут ли эти так называемые "статические маршруты" (или их лайки) решить мою проблему. Итак, я спрашиваю: есть ли способ сделать магию маршрутизатора и как-то назначить статический, выделенный IP-адрес каждому серверу, независимо от того, сколько раз я включаю / выключаю его?

Особенности:

  • Мой роутер: Netgear WGR614v7
  • Мои серверы (все 3 идентичны): Acer на рабочем столе под управлением Ubuntu Server 12.04
1
Зачем назначать IP-адрес в маршрутизаторе, когда вы можете просто сделать это на сервере? Кто-то, кто знает Ubuntu, должен будет предоставить шаги, но если бы вы работали в мире Windows, это то, что я бы сделал. N_Lindz 11 лет назад 1
Спасибо @N_Lindz (+1) - я слаб в сетевой части вещей. Вы говорите, что возможно (по крайней мере, в Windows) для машины * объявить * свой собственный IP-адрес в локальной сети, а для маршрутизатора выполнить это объявление?!? Если это так, то я впервые слышу о такой вещи! Похоже, это приведет к кошмару безопасности, но это определенно стоит исследовать для моих нужд. Всем, кто читает это: если это возможно с Ubuntu, пожалуйста, дайте мне знать, как! pnongrata 11 лет назад 0
Если возможно, вы можете добавить статические имена хостов в маршрутизатор и использовать их, а не IP-адреса для справочных служб. Simon Richter 11 лет назад 0

4 ответа на вопрос

3
RedGrittyBrick

Динамическая конфигурация

Обычно компьютеры, продлевающие аренду DHCP, предоставляют ранее использованный адрес и, вероятно, будут перераспределены.

Изменение IP-адреса не должно иметь значения, если вы используете DNS-имена, а DHCP-сервер используется в качестве локального DNS-сервера.

Обычно вы можете настроить большинство маршрутизаторов так, чтобы резервирование DHCP выполнялось таким образом, чтобы один и тот же IP-адрес всегда выделялся для каждого устройства (в зависимости от определенного MAC-адреса, записанного в его адаптере Ethernet).

Статическая конфигурация

Однако для трех или четырех компьютеров статическая конфигурация легко управляется.

С большим количеством компьютеров может быть утомительно ходить, входить в каждый из них, настраивать статический IP-адрес, маску подсети, шлюз по умолчанию, DNS-серверы или таблицы локальных хостов и так далее. Отслеживание всего этого требует тщательного учета, ведения списков MAC-адресов и отслеживания случайного дублирования IP-адресов, знания о том, как распознать и диагностировать неправильную конфигурацию и т. Д. С четырьмя компьютерами это не проблема.

Спасибо @RedGrittyBrick (+1) - несколько замечаний: (1) Я не планирую настраивать DNS / DHCP для этой локальной среды разработки / тестирования: в конечном итоге это приложение будет развернуто в Google App Engine, поэтому DNS - это не то, что я надо долго переживать; и (2) вы говорите, что статической конфигурацией легко управлять с небольшим набором ПК: не могли бы вы пояснить, что вы подразумеваете под этим? Еще раз спасибо! pnongrata 11 лет назад 0
Смотрите обновленный ответ RedGrittyBrick 11 лет назад 0
1
LawrenceC

«Волшебство маршрутизатора», о котором вы говорите, называется «резервированием» - оно, в основном, позволяет указывать серверу DHCP, работающему на устройстве, всегда назначать конкретный IP-адрес определенному MAC-адресу. Я уверен, что ваш маршрутизатор имеет эту функцию.

@RedGrittyBrick верен, но всегда есть небольшая вероятность, что что-то может измениться или испортить (то есть то, что вы должны сбросить маршрутизатор, и, поскольку это маршрутизатор уровня потребителя, вы будете в какой-то момент), так что если вы хотите 100% -ную надежность знания IP-адреса определенных машин либо устанавливают резервирование DHCP, либо назначают IP-адреса вручную. В «реальной жизни» серверы обычно устанавливаются со статическими IP-адресами, а не для получения информации о конфигурации через DHCP.

Назначение IP на сервере НЕ заставляет сервер сообщать другим машинам о назначении. Вам придется документировать настройки вручную.

«Статические маршруты» сообщают вашим компьютерам или маршрутизатору, какой конкретный маршрутизатор «в дальнейшем» будет перенаправлять трафик определенному набору адресатов. Это не имеет ничего общего с назначением IP-адресов.

Спасибо @ultasawblade (+1) - поэтому, если я вас правильно понимаю, сначала мне нужно получить MAC-адрес для каждой машины, а затем я должен иметь возможность войти в веб-приложение администратора маршрутизатора и настроить эти * резервирования *? Я предполагаю, что мне нужно будет предоставить IP-адрес и маску подсети для каждого? Или я здесь вне базы? Еще раз спасибо! pnongrata 11 лет назад 0
Ты понял. Обычно вам просто нужно указать IP-адрес. Маска подсети маршрутизатора (обычно 192.168.0.X / 24 или 192.168.0.X / 255.255.255.0) будет принята и отправлена ​​клиентам через DHCP. LawrenceC 11 лет назад 0
1
Everett

Есть два основных способа для машины иметь IP-адрес. Один статический, другой динамичный. В статической конфигурации я сажусь за компьютер и настраиваю статический неизменяемый IP-адрес (используемый при перезагрузке), маску подсети (сколько IP-адресов существует в ЭТОЙ сети) и шлюз (куда я иду, чтобы выйти из этого сети). В динамической конфигурации (DHCP) я настраиваю маршрутизатор с непрерывным пулом IP-адресов и шлюзом и позволяю ему раздавать их.

Есть гибридный третий вариант. Я настраиваю пул, но настраиваю каждую систему на наличие IP-адреса. Это упоминается как статический IP в конфигурации DHCP. Хитрый, нет?

Для краткости и согласованности я бы рекомендовал настроить статический IP-адрес. У вас будет гарантия, что IP-адреса не могут и не будут меняться, и если вы настроите контроллер домена (активный каталог или открытый каталог) и решите создать DNS-сервер, он будет работать. Вам необходимо настроить маршрутизатор со следующей информацией:

Статическая сеть: вы установили ограничение вашей сети от 5 (и если вы добавляете сетевое хранилище или принтер) до <10. Как насчет того, чтобы иметь до 254 хостов (отдельных IP-адресов) на тот случай, если вы думаете о что-то хочешь попробовать?

С 192.168.0.0 по 192.168.0.255 (192.168.0.0 будет сетевым адресом, а 192.168.0.255 будет широковещательным адресом, объясним это позже).

Чтобы сообщить маршрутизатору, что мы хотим использовать этот диапазон адресов, он должен быть настроен на использование сетевого IP-адреса 192.168.0.0 и маски подсети 255.255.255.0. Этот последний 0 дает диапазон от 0 до 255 для сетевого IP-адреса., Таким образом, действительные IP-адреса в вашей сети будут от 192.168.0.0 до 192.168.0.255 (первые три «октета» или 192 168 и 0 не меняются, меняется только последний). Таким образом, у вас есть 2 ^ 8 IP-адресов или 256 адресов (помните, что двум из них уже назначены .0 и .255), так что на самом деле у вас осталось 254.

Вы можете использовать все, что осталось, вам не нужно использовать их по порядку. Я рекомендую начинать с 192.168.0.1 и останавливаться, когда у каждой системы есть IP-адрес. Для простоты в вашей конфигурации назначьте маршрутизатор 192.168.0.1, сервер A 192.168.0.2, сервер B 192.168.0.3, сервер C 192.168.0.4 и вашу машину разработки 192.168.0.5. Да, вы можете поменять порядок, или использовать только четные числа, или сделать их все десять (.10, .20, .30, .40, .50), если хотите. Я просто делаю просто.

Теперь, когда у вас есть дизайн сети, вам нужно настроить следующее для каждого элемента оборудования:

Айпи адрес:

Маска подсети: 255.255.255.0

Шлюз: Для всех, кроме маршрутизатора, это будет IP-адрес маршрутизатора или 192.168.0.1 (для маршрутизатора это IP-адрес вашего провайдера). Представьте, что это статический маршрут между вашей сетью и провайдером (или любой другой сетью, к которой вы его подключаете).

Некоторые преимущества этой системы. Если не передавать DHCP-адреса, новому устройству, подключенному к вашей сети, по умолчанию не просто присваивается IP-адрес. Это должно быть настроено. Это означает, что людям немного сложнее подключиться к вашей сети, не зная об этом.

Еще одна тонкость, если вы настраиваете VPN-сервер на Ubuntu box, вы можете подключиться удаленно. Инструкции для этого не будут предоставлены здесь.

Кроме того, вам не нужно беспокоиться о таких вещах, как MAC-адреса, только IP-адреса.

При всем этом у вас должна быть сеть. Если вы хотите узнать, как настроить каждый отдельный ящик, я уверен, что Google поможет вам в этом. Помните, что это просто базовая конфигурация сети, через которую я вас провел. Никаких наворотов, таким образом, его легко настраивать, устранять неполадки и защищать, поскольку у вас меньше переменных для работы. Помните, что в этой конфигурации вы жестко закодировали IP-адреса для каждого устройства. Маршрутизатор просто движется трафик. Любые вопросы?

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

0
JoshP

В Ubuntu Server, чтобы настроить статический IP - адрес, вам нужно отредактировать /etc/network/interfacesфайл, чтобы посмотреть, как это (сделать address, netmaskи gatewayваш собственный, конечно).

auto eth0 iface eth0 inet static address 10.0.0.100 netmask 255.255.255.0 gateway 10.0.0.1 

Цитируется здесь :

Чтобы настроить вашу систему на использование статического IP-адреса, добавьте статический метод в оператор семейства адресов inet для соответствующего интерфейса в файле / etc / network / interfaces. В приведенном ниже примере предполагается, что вы настраиваете свой первый интерфейс Ethernet, обозначенный как eth0. Измените значения адреса, маски сети и шлюза, чтобы они соответствовали требованиям вашей сети.