С одной стороны, пост скорее для студентов. С другой же стороны, многие состоявшиеся специалисты никогда не задумывались о такой простой вещи, как адресация в учебных сетях.
Всё, что я здесь напишу – это сугубо моё личное мнение, которое не претендует на истину в последней инстанции. И да, тут будет много поясняющей воды.
Зайду издалека. Если вы проходите что-то связанное с сетями (или посещаете курсы, а может просто решили сварганить тестовую среду с друзьями под пивко), то рано или поздно дело доходит до практики – построения сети на живом оборудовании или во всяких там эмуляторах. Я сейчас буду рассматривать пример лабораторной в университете/на курсах. Итак, на доске рисуется некоторая схема сети, а дальше у нас два варианта:
1) Преподаватель расписывает всю-всю адресацию (рис.1)
2) Преподаватель расписывает концептуальное задание, а адресация остается на ваше усмотрение (рис.2)
Первый вариант понятен – за нас уже подумали. Но не факт, что хорошо (и мы всегда можем предложить свой вариант с преферансом и гимназистками – вдруг прокатит). Рассмотрим плюсы и минусы конкретного примера с рисунка 1 (синие кружки – хосты, оранжевое – линки, зеленое – сеть на самом хосте и «за ним»).
Плюсы:
1) Препод делал эту лабу раз 800 именно в таком виде и может отдебажить с закрытыми глазами
2) Возможно, у него уже написана методичка под эту адресацию.
3) В принципе, одинаковые IP для хостов (192.168.х.1) – это удобно.
Вообще, на мой взгляд, плюсы на этом заканчиваются (да и то: два из них для преподавателя, а третий сомнителен) и начинается полная Ж для нас:
1) Если вы видите и делаете эту лабу первый раз, у вас все десятые айпишники сливаются перед глазами. Мы делали во второй раз – просто при конфигурации интерфейсов на 4 человека и восемь интерфейсов было сделано три ошибки с перепутанной единичкой/двойкой.
2) При прописывании маршрутов эти описки множатся
3) Дебажить – просто ад. Постоянно пялиться на схему, сверять сети. Сети опять сливаются перед глазами. На слух тоже плохо воспринимаются адреса.
4) При усложнении конфигурации (добавлении пары ликнов, как на рис.2) вообще пропадает логика адресации. Только схема, только хардкор.
Подход, тем не менее, очень часто используется и имеет право на жизнь. Но теперь представьте, что вы уже не на первом курсе. У вас не 4 хоста, а 14, по числу студентов в группе и соединены они не по кругу, а как попало (рис.3). И задачи у вас посложнее.
Немного вбоквел. На прошлой неделе я счастливо посещала курсы, на которых мы в очередной раз не сошлись с преподавателем в некоторых концептуальных вопросах. Его мнение – не стоит тратить время на такие глупости, как выбор толкового плана адресации, не надо усложнять, надо скорее делать, так как время не резиновое. Моё мнение – один раз расписать логику адресации (я делаю это уже на автомате и быстро), зато снизим ошибки конфигурации и облегчим дебаг. Победил преподаватель, расписав схему а-ля рис.1. Роман, если читаешь, извини, что я так громко возмущалась, но я до сих пор не согласна. Конец вбоквела.
Сейчас несколько общих советов, годных для любого плана адресации:
1) План адресации вам всё-таки нужен, иначе обязательно пойдут пересечения сетей, особенно «популярных», вроде 10.1.1.0/24
2) Выбирайте строго одного человека, который выберет план адресации, пусть даже хреновый. Время принятия решения возрастает в степени количества участников (один человек – 5 минут, 3 человека – 5^3=125 минут)
3) Не мельчите сетки и указывайте популярные маски, если иное не обозначено условиями задачи. В учебной сети нет цели сэкономить адреса. Помните, что вокруг вас люди, которые даже с калькулятором сетей не особо представляют себе, как одна сетка /25 делится на две /26. Короче, /24 – ваш безусловный выбор (если только вы не проходите тему агрегации сетей).
Теперь посмотрим на рис.4 – Это бывший рис.2 с расписанной альтернативной адресацией. И сейчас будут конкретные советы.
В данном случае, план адресации сформулирован правилами:
1) На сеть между двумя хостами X и Y назначается адрес вида 10.1.XY.0/24, где X – номер меньшего по номеру хоста, а Y – адрес большего по номеру хоста.
2) На хост X назначается адрес 10.1.XY.Х/24, на хост Y адрес 10.1.XY.Y/24
3) VLAN между хостами имеет номер XY
4) Адрес сети за хостом имеет адрес вида 192.168.100+X.0/24
5) Адрес хоста во внутренней сети назначается 192.168.100+X.Х/24
Эта сеть легко расширяется. 100+Х мы брали, чтоб не пересечься с популярной дефолтной сеткой 192.168.1.0/24, на которой, скорее всего, висит сеть с инетом.
А внимательный пикабушник посмотрит на рисунок 3 и скажет, что данная схема нормально расширяется только до 9 хостов, а дальше мы имеем вероятность вылезти за рамки числа 254 в XY. НО! У нас же остался неиспользованный октет!
В сети более, чем на 9 хостов используйте правила:
1) На сеть между двумя хостами назначается адрес вида 10.X.Y.0/24, где X – номер меньшего по номеру хоста, а Y – адрес большего по номеру хоста.
2) На хост X назначается адрес 10.X.Y.Х/24, на хост Y адрес 10.X.Y.Y/24
Пример с рис.3: На линке между 12 и 9 хостами будет сеть 10.9.12.0/24, на 9ом будет адрес 10.9.12.9/24, а на 12ом 10.9.12.12/24.
И ещё несколько советов:
1) Используйте как можно более разные сети для связей разной природы. Скажем, 10.1.XY.0/24 для физических линков, а 172.16.XY.0/24 для навешивания на GRE туннели.
2) В схеме 10.X.Y.0/24 у вас еще есть запас сетей 10.100+X.100+Y.0/24
3) Аккуратно относитесь к номерам VLAN, если нумеруете хосты с нуля. VLAN 1 занят под native. И за к номерам за 1000 тоже аккуратно относитесь, лучше сделать пару исключений из логики, если пошли такие VLAN’ы.
Что мы получаем: Зная только номера хостов соседей можно спокойно расписывать себе адреса, пока они там телятся. Глядя только на схему с хостами и связями, можно прописывать на своей стороне уже всё, что надо (и не надо расписывать на доске адресацию по всем 14 хостам). В любом месте, запуская tcpdump (или аналог), мы по прилетающим адресам точно можем сказать, откуда они прилетели и быстро найти это место.
На мой взгляд, удобная и хорошо масштабируемая в рамках учебных задач схема.
Собственно, вот и всё, чем хотелось поделиться. Выбирать из этих или придумывать свой вариант – решать вам.