Содержание

IP-адреса в Функциях Azure | Microsoft Learn

  • Статья

В этой статье объясняются следующие принципы, связанные с IP-адресами приложений-функций:

  • Поиск IP-адресов, сейчас используемых приложением-функцией.
  • Условия, вызывающие изменение IP-адресов приложения-функции.
  • Ограничение IP-адресов, которым разрешен доступ к приложению-функцию.
  • Получение выделенных IP-адресов для приложения-функции.

IP-адреса связаны с приложениями-функциями, а не с отдельным функциями. Входящие HTTP-запросы не могут использовать входящий IP-адрес для вызова отдельных функций. В них должно использоваться доменное имя по умолчанию (functionappname.

azurewebsites.net) или имя личного домена.

Входящий IP-адрес приложения-функции

Каждое приложение-функция начинается с одного входящего IP-адреса. При выполнении в плане «Потребление» или «Премиум» могут добавляться дополнительные входящие IP-адреса при горизонтальном масштабировании на основе событий. Чтобы найти входящий IP-адрес или адреса, используемые приложением, используйте служебную nslookup программу на локальном компьютере, как показано в следующем примере:

nslookup <APP_NAME>.azurewebsites.net

В этом примере замените <APP_NAME> именем приложения-функции. Если приложение использует имя личного домена, используйте nslookup вместо него имя личного домена.

IP-адреса для исходящего трафика приложения-функции

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

Совет

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

Вот как можно найти исходящие IP-адреса, доступные для приложения-функции.

  • Портал Azure
  • Azure CLI
  • Azure PowerShell
  1. Войдите в обозреватель ресурсов Azure.
  2. Выберите Подписки > {ваша подписка} > Поставщики > Microsoft.Web > Сайты.
  3. На панели «JSON» найдите сайт со свойством
    id
    , которое заканчивается именем вашего приложения-функции.
  4. См. разделы outboundIpAddresses и possibleOutboundIpAddresses.

Для приложения-функции в настоящее время доступен набор адресов outboundIpAddresses. Набор possibleOutboundIpAddresses включает в себя IP-адреса, которые будут доступны, только когда приложение-функция будет переведено на другую ценовую категорию.

Примечание

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

Исходящие IP-адреса центра обработки данных

Если необходимо добавить исходящие IP-адреса, используемые приложениями-функциями, в список разрешений, можно также добавить в него центр обработки данных (регион Azure) приложений-функций.

Вы можете скачать JSON-файл со списком IP-адресов всех центров обработки данных Azure. Затем найдите фрагмент JSON, который относится к региону, в котором выполняется приложение-функция.

Например, в следующем фрагменте JSON показано, как может выглядеть список разрешений для Западной Европы:

{
  "name": "AzureCloud.westeurope",
  "id": "AzureCloud.westeurope",
  "properties": {
    "changeNumber": 9,
    "region": "westeurope",
    "platform": "Azure",
    "systemService": "",
    "addressPrefixes": [
      "13.69.0.0/17",
      "13.73.128.0/18",
      ... Some IP addresses not shown here
     "213.199.180.192/27",
     "213.199.183.0/24"
    ]
  }
}

Чтобы получить сведения о том, когда этот файл обновляется и изменяются IP-адреса, разверните раздел

Сведения на странице Центра загрузки.

Изменения входящего IP-адреса

Входящий IP-адрес может измениться, если вы:

  • удалите приложение-функцию и создадите его заново в другой группе ресурсов;
  • удалите последнее приложение-функцию с некоторым сочетанием группы ресурсов и региона и создадите его заново;
  • удалите привязку TLS, например во время обновления сертификата.

При первом запуске приложения-функции в рамках плана «Потребление» или плана «Премиум» входящий IP-адрес также может измениться, даже если вы не выполнили какие-либо действия, например, из перечисленных выше.

Изменения исходящих IP-адресов

Относительная стабильность исходящего IP-адреса зависит от плана размещения.

План «Потребление» и план «Премиум»

В связи с особенностями автоматического масштабирования исходящий IP-адрес может измениться в любое время при выполнении в плане «Потребление» или в плане «Премиум».

Если вам нужно управлять исходящим IP-адресом приложения-функции, например вам необходимо добавить его в список разрешений, рассмотрите возможность реализации шлюза NAT виртуальной сети в плане размещения «Премиум». Это также можно сделать в плане «Выделенный» (Служба приложений).

Планы «Выделенный»

При выполнении в планах «Выделенный» (Службы приложений) набор доступных исходящих IP-адресов для приложения-функции может измениться в следующих случаях:

  • выполните какое-либо действие, которое может изменить входящий IP-адрес;
  • измените ценовую категорию для плана «Выделенный» (Службы приложений). Список всех возможных исходящих IP-адресов приложения для всех ценовых категорий указан в свойстве possibleOutboundIPAddresses
    . См. также раздел Поиск исходящих IP-адресов.
Принудительное изменение исходящего IP-адреса

Используйте следующую процедуру, чтобы принудительно изменить исходящий IP-адрес в плане «Выделенный» (Службы приложений):

  1. Изменить масштаб плана службы приложений, перейдя с ценовой категории «Стандартный» на «Премиум V2» (или наоборот).

  2. Подождите 10 минут.

  3. Вернитесь на исходную ценовую категорию.

Ограничения IP-адресов

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

Выделенные IP-адреса

Существует несколько стратегий, если приложению-функции требуются статические выделенные IP-адреса.

Шлюз NAT виртуальной сети для исходящего статического IP-адреса

Вы можете управлять IP-адресом исходящего трафика из функций, используя шлюз NAT виртуальной сети для направления трафика через статический общедоступный IP-адрес. Эту топологию можно использовать в плане Премиум или Выделенный (Служба приложений). Дополнительные сведения см. в статье Учебник. Управление исходящим IP-адресом Функций Azure с помощью шлюза NAT виртуальной сети Azure.

Среда службы приложений

Для полного контроля над IP-адресами, входящими и исходящими, рекомендуется использовать Среды службы приложений (Изолированный уровень планов Службы приложений). Дополнительные сведения см. в разделах IP-адреса ASE и Как управлять входящим трафиком в среде службы приложений.

Вот как можно узнать, работает ли ваше приложение-функция в среде службы приложений.

  • Портал Azure
  • Azure CLI
  • Azure PowerShell
  1. Войдите на портал Azure.
  2. Перейдите к приложению-функции.
  3. Откройте вкладку Обзор.
  4. Категория плана службы приложений отображена в разделе План служб приложений или ценовая категория. Ценовая категория среды службы приложений — Изолированный.

Номер sku среды службы приложений —

Isolated.

Дальнейшие действия

Распространенная причина изменения IP-адреса — изменение масштаба приложения-функции. Узнайте больше о масштабировании приложений-функций.

Как настроить геолокацию на сайте

Найди меня

Как определить местоположение посетителя сайта

Предугадывать желания клиента уже недостаточно — теперь хорошо бы знать заранее, где он находится. Для этого придется немного пошпионить. Чего не сделаешь, чтобы повысить качество пользовательского опыта. Хорошая новость: клиенты сами не против делиться своим местоположением, если понимают, в чем польза. Расскажем, кому и зачем нужна геолокация посетителей сайта, какими способами ее добыть на десктопе и мобильных, и как не заблудиться в процессе.

Каким сайтам необходима геолокация пользователей

Геолокация гостей сайта — хлеб насущный для всей электронной коммерции.
Особенно если речь о компаниях с филиалами в нескольких регионах. Опираясь на местоположение пользователя, сайт показывает только релевантную информацию: контакты офисов в его городе, наличие товара на складе, ближайшие пункты выдачи, цены на товары и доставку с учетом региона и т. д.

Для бизнеса, который расположен только в одном городе, нужна более точная локация пользователя — в идеале адрес, но подойдет и примерный радиус. Так можно быстро выдать список удобных точек, в которых есть выбранный товар. Например, подсказать, из какой аптеки поблизости забрать заказ.

Без геолокации не обойтись: агрегаторам и информационным порталам, которые помогают найти ближайшие магазины, рестораны, кинотеатры и другие объекты; такси и курьерским доставкам.

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

Варианты определения геолокации посетителя страницы

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

Несмотря на big data и то, что корпорации уже знают про нас больше, чем мы про себя сами, приватность геолокации пока свято охраняется. Это не прихоть отдельных компаний, а международный стандарт. Поэтому без согласия пользователя доступен только один автоматический вариант — определение локации по IP. Он же — самый приблизительный из возможных.

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

Как работает автоматическая геолокация по IP

IP-адрес — это уникальный адрес в определенной сети. Когда пользователь переходит на сайт, в качестве его IP-адреса выступает IP-адрес провайдера, через которого он зашел в интернет. Существуют базы IP-адресов, в которых информация об адресах связана с их предполагаемым местоположением. Сайт с определением локации «на входе» автоматически обращается к этой базе, а она в ответ предполагает регион или город посетителя. В некоторых случаях система ошибается, например, если у пользователя включен VPN. Поэтому лучше перестраховаться и спросить, правильно ли вы определили город, а также добавить опцию выбора из списка.

Отлично, если вы объясните, зачем вообще задаете такой вопрос. Так делают редко, но те, кто делают — молодцы.

Сразу указали, что от региона зависит стоимость. Полезно: посетитель сразу понимает, что ваш интерес не праздный

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

Стоит ли пользоваться встроенными модулями для CMS

Для автоматического определения локации предлагают встроенные модули почти для всех CMS. Например, множество вариантов для Битрикс. Обещают пользу и удобство, но по факту такой модуль может сломать вам сайт. Даже если технически всё будет безопасно, то одним плагином вы все равно не обойдетесь. Понадобится интерфейс для подтверждения города и его замены; прописанная логика поведения сайта для разных городов — иногда нужно поменять только телефоны и адреса, а иногда — содержание большей части страниц. Без программиста всё это не организовать.

Определение локации по данным Geolocation API

Теперь мы выходим на дорогу данных, которые без разрешения пользователя не получить. Автоматически более точные данные о местоположении не передаются, посетитель сам должен «подписаться» под тем, что не возражает поделиться своей геолокацией.

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

Все свои возможности Geolocation API раскрывает только с мобильного устройства (подойдет смартфон или планшет). Здесь при получении согласия посетителя, вы сможете определить его геолокацию с точностью до дома. Вариантов «вычисления» координат несколько — через вышки сотовой связи поблизости (Cell ID), по данным от WIFI или GPS. Чтобы получить максимально точную геопозицию пользователя, имеет смысл проверять данные по убыванию точности:

Сначала GPS. Если у пользователя он включен или сохранились актуальные данные о местоположении, то локация определяется именно так. Точность на высоте — GPS делится конкретными координатами пользователя, а не пытается угадать, где же он.

Включен Wi-Fi — адрес вычисляется по его положению. Запрос идет к базам данных Wi-Fi. Точность ниже, чем в первом варианте. Локацию можно определить в радиусе 100 метров.

Мобильные станции помогают, когда нет других данных. Упор тоже на базы вышек мобильной связи. Здесь радиус еще шире — около километра.

IP-адрес выручает, если с данными совсем скромно. Вы получите очень приблизительную догадку о том, где базируется посетитель сайта — город или (если повезет) район.

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

Не запрашивайте локацию сразу же после перехода на сайт. Человек только заглянул к вам, еще не понял, что происходит, а вы уже с порога: «ну, давай, выкладывай свой адрес». Такие настойчивые попытки сблизиться отпугивают. Скорее всего посетитель на автомате нажмет отказ.

Рив Гош посылает запрос автоматически при переходе на сайт. Пользователь еще даже не успел познакомиться с товаром

Задавайте вопрос о геолокации в контексте, полезном пользователю. Если посетитель пока просто читает статью, не стоит атаковать его запросами.

Аптека пытается узнать локацию посетителя, пока тот читать статью про боль в горле

К геолокации стоит обращаться, когда клиент совершает действие, в котором она будет полезна. Например, переходит к выбору пункта выдачи заказа из корзины. Тут-то вы ему сразу и намекнете, что если маякнуть свое расположение, то возиться с адресом не придется, все ближайшие точки как на ладони.

ПроАптека отправляет запрос на геолокацию только из корзины, а потом показывает все ближайшие точки выдачи заказа

Отказов будет меньше, если вы разместите очевидную кнопку, например «найти меня» или «найти поблизости». Нажав на нее, пользователь сам совершит действие, говорящее о том, что он заинтересован передать вам свой адрес.

Аптека по умолчанию предлагает выбрать из списка пунктов, а для более точной локации — нажать на кнопку в правом нижнем углу

А вот более очевидный вариант

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

Чтобы проще реализовать ввод адреса, пользуются API карт, чаще всего Яндекса или Гугла, или специальными базами данных — например, ДаДата. Так пользователь сможет найти себя на карте, указать точку или подобрать нужное место.

BoxBerry предлагает найти на карте подходящий пункт

От браузера к более mobile-friendly решению: геолокация в PWA

Самый «родной» инструмент для определения геолокации — мобильное приложение. Пользователю удобно и просто ориентироваться в интерфейсе, а вам достаточно получить разрешение всего один раз. Но создать приложение, а потом привлечь туда достаточную аудиторию — это задача со звездочкой. Если вы хотите сэкономить себе время, нервы и деньги, но при этом попробовать что-то более mobile-friendly, чем обычный браузер, — знакомьтесь с PWA.

PWA (Progressive Web App) — технология, позволяющая по сути преобразовать ваш сайт в приложение. А установить его потом можно прямо из браузера, минуя магазины с их требованиями и ограничениями.

При переходе на ваш сайт посетитель увидит призыв установить PWA. Сделать это можно в один клик.

Гугл предлагает установить PWA для разработчиков

После установки у пользователя появится ярлык на рабочем столе, он сможет получать уведомления, а вы получите доступ к аппаратным средствам гаджета. Технология кроссплатформенная, поэтому вы создаете одно приложение, подходящее сразу для всех устройств и операционок.

Запрос для определения геолокации идет к тем же данным, что и в нативном приложении из магазина.

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

Выделим аргументы «за» и «против» PWA.

Итоги: какой вариант определения геолокации выбрать

Калькулятор подсети

IP — рассчитать маску подсети онлайн Калькулятор подсети IP

— рассчитать маску подсети онлайн

Калькулятор подсети

Калькулятор подсети IPv4

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

Наш сетевой калькулятор

С нашим сетевым компьютером вы можете легко выполнить тестовые расчеты и таким образом определить возможную конфигурацию. Компьютер подсети поддерживает ввод IP-адреса, размера сети и сетевой маски. В зависимости от того, какую запись вы измените, мы пересчитаем сети. Расчет подсетей или расчет сетей — важный инструмент для всех, кто имеет дело с настройкой хостов, серверов и маршрутизаторов.

Рассчитать подсеть

IP-адрес

Размер сети

Сетевая маска

Расчетная сеть

Имя значения Значение
IP-адрес хоста из 38. 242.157.157
IP-адрес хоста до 38.242.157.157
Количество IP-адресов 1
Адресуемые хосты 1
Обозначение CIDR 38.242.157.157/32
Сетевой адрес 38.242.157.157
Сетевая часть 38.242.157.157
Трансляция 38.242.157.157
Маска подсети 255.255.255.255

IP-адреса

Адрес Значение
Хост № 1 38. 242.157.157

Копируемый отчет калькулятора подсети

 38.242.157.157/32 Quads Hex Binary Integer
------------------ ----------------------------- -------- -------------------------------- ----------
IP-адрес: 38.242.157.157 26F29D9D 00100110111100101001110110011101 653434269
Маска подсети: 255.255.255.255 FFFFFFFF 1111111111111111111111111111111 4294967295
Сетевая часть: 38.242.157.157 26F29D9D 00100110111100101001110110011101 653434269Часть хоста: 0.0.0.0 00000000 00000000000000000000000000000000 0
Количество IP-адресов: 1
Количество адресуемых хостов: 1
Диапазон IP-адресов: 38.242.157.157 - 38.242.157.157
Адрес трансляции: 38.242.157.157
Минимальный хост: 38.242.157.157
Максимальный хост: 38.242.157.157
Домен IPv4 ARPA: 157.157.242.38.in-addr.arpa
 

База знаний

Здесь мы отвечаем на вопросы о мониторинге серверов от Livewatch. Если у вас есть вопрос, на который мы еще не ответили здесь, пожалуйста, свяжитесь с нами.

Калькулятор подсети — что такое маска подсети?

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

Что такое компьютерная сеть? Для чего нужен этот сетевой компьютер?

Компьютерная сеть представляет собой соединение между двумя или более компьютерами в телекоммуникационной системе. Причина использования компьютерной сети заключается в совместном использовании ресурсов. Мы можем классифицировать сети по многим параметрам. Чтобы правильно настроить эти сети, вы можете легко рассчитать подсети и сети с помощью нашего инструмента.

Есть ли стоимость калькулятора подсети?

Нет, вы можете использовать наш калькулятор подсети совершенно бесплатно. Просто введите желаемый IP и маску подсети, калькулятор подсети бесплатно рассчитает все за вас.

Мониторинг серверов по всему миру

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

Мониторинг какого сервера вы ищете?
  • Мониторинг сервера
  • Монитор работоспособности
  • Мониторинг производительности
  • Мониторинг веб-сайтов
  • Проверка веб-сайта
  • Проверка связи
  • Доступность сервера
  • Производительность безотказной работы
  • Мониторинг контента
  • Сервер мониторинга
  • Мониторинг веб-сайта
  • DNS-тест
  • Пинг-тест
  • Тест скорости веб-сайта
  • IP-сайт
Создать учетную запись

Мониторинг сервера

Непрерывный мониторинг вашего веб-сайта

Uptime-Check

Подробное ведение журнала доступности вашего веб-сайта

Мониторинг проверки

Легко создавайте собственные экзамены и контролируйте свою инфраструктуру

Начните мониторинг прямо сейчас!

Зарегистрируйте свою учетную запись бесплатно и без обязательств.

Зарегистрируйтесь сейчас бесплатно

Мониторинг сервера Livewatch за 60 секунд

Давайте объясним наше предложение по мониторингу сервера в 60-секундном видео.

60 секунд видео — все о мониторинге серверов

Online IP Subnet Calculator

Вы можете найти чешскую версию описания ниже в моей статье TCP/IP — адреса, маски, подсети и выпосты.

Что такое компьютерная сеть?

Компьютерная сеть представляет собой соединение двух или более компьютеров в той или иной форме телекоммуникационной системы. Причиной использования компьютерной сети является обмен источниками. Мы можем классифицировать сети по многим параметрам. Некоторыми часто используемыми технологиями являются Ethernet, с протоколом TCP/IP, для , , локальная сеть , (локальная сеть — покрывает небольшую географическую область и обеспечивает высокую пропускную способность с малыми задержками) и Frame Relay 9. 0225 для Глобальная сеть (WAN — соединение локальных сетей).

Что такое подсеть (подсеть)?

Поскольку реальные сети очень велики, мы не можем общаться напрямую со всеми компьютерами. Итак, мы делим сеть на более мелкие части (иерархически), и эти части называются подсетями . Другая причина в том, что нам нужно присвоить некоторые адреса некоторым организациям. LAN — это подсеть или группа подсетей. Сетевые устройства в IP-подсети имеют общий Префикс IP-адреса . Связь между подсетями осуществляется маршрутизаторами. Разделение сети на более мелкие части также положительно сказывается на производительности, поскольку широковещательные пакеты (пакеты, отправляемые всем) не пересекают границу подсети. Виртуальная локальная сеть (VLAN) используются, чтобы иметь больше подсетей на одном коммутаторе.

Что такое IP-адрес?

IP-адрес (интернет-протокол) — это логический адрес устройства в компьютерная сеть с использованием протокола IP (работает на уровне 3 модели ISO/OSI). IP-адреса используются в Интернете. IP-адреса хранятся в виде 32-разрядных двоичных чисел, но отображаются как , четыре десятичных числа, разделенные точкой (точечно-десятичное представление), например 68.12.5.10 . IP-адрес указывает логическое местоположение устройства. Диапазон IP-адресов: от 0.0.0.0 до 239.255.255.255 . Публичные адреса управляются IANA (Управление по присвоению номеров в Интернете), а блоки адресов распределяются по Местным Интернет-реестрам . Эти адресные блоки соответствуют геологическим местоположениям.

Примечание: Я пишу здесь о более старой и все еще используемой версии интернет-протокола 4 (IPv4), но есть новая версия 6 этого протокола (IPv6), которая использует 128 бит для адреса и предлагает гораздо больше адресов.

Если вы хотите узнать IP-адрес вашего компьютера (часто частный адрес), вы можете использовать команду ipconfig или ipconfig /all в ОС Windows или ifconfig в ОС Linux.

Части IP-адреса

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

Примечание: Несмотря на использование CIDR, по-прежнему принято делить IP-адрес на 3 части, где номера сетей выполняются по классам (даже если мы используем бесклассовую сеть), номер подсети отделен от этого класса, а остальная часть является частью хоста. Это важно, когда мы вычисляем количество подсетей.

 classful <сетевой-префикс><-------номер-хоста-------->
бесклассовый <номер сети><номер подсети><номер хоста>
бесклассовый <-------сетевой-префикс--------><номер-хоста> 

Общедоступные IP-адреса

Общедоступные IP-адреса составляют основную часть IP-адресов. Эти адреса используются в Интернете или других WAN (глобальная сеть) и могут маршрутизироваться в этих сетях.

Частные IP-адреса

Частные IP-адреса используются в LAN (локальная сеть), и если вы хотите общаться с Интернетом, вы должны преобразовать этот адрес в общедоступный IP-адрес. Распространенным решением для преобразования адресов является 9.0223 NAT (преобразование сетевых адресов). Мы используем частные IP-адреса, чтобы сэкономить количество общедоступных IP-адресов.

сеть идентификатор сети широковещательный адрес адреса узлов класс
10. 0.0.0/8 10.0.0.0 10.255.255.255 10.0.0.1 — 10.255.255.254 класс А
172.16.0.0/12 172.16.0.0 172.31.255.255 172.16.0.1 — 172.31.255.254 класс Б
192.168.0.0/16 192.168.0.0 192.168.255.255 192.168.0.1 — 192.168.255 .254 класс С

Специальные IP-адреса

У нас также есть несколько диапазонов IP-адресов со специальными значениями.

сеть идентификатор сети широковещательный адрес имя
0.0.0.0/32     идентификатор сети по умолчанию (ноль)
0.0.0.0/8 0.0.0.0 0.255.255.255 ноль адресов
127. 0.0.0/8 127.0.0.0 127.255.255.255 адрес обратной связи localhost
169.254.0.0/16 169.254.0.0 169.254.255.255 адреса Zeroconf (APIPA)
192.0.2.0/24 192.0.2.0 192.0.2.255 документация и примеры
192.18.18.0/23 192.18.18.0 192.18.19.255 тест сетевого устройства
192.88.99.0/24 192.88.99.0 192.88.99.255 Ретрансляция с IPv6 на IPv4 Anycast
224.0.0.0/4     многоадресных адреса

Идентификатор сети

Первый IP-адрес подсети не может быть назначен хосту. Этот адрес идентифицирует подсеть, он называется идентификатор сети (или базовый адрес, или сетевой адрес). Этот адрес имеет только нуля в хостовой части .

Широковещательный адрес

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

Примечание: У нас есть 3 типа связи (отправка данных). Во-первых, это одноадресная рассылка , когда один хост отправляет сообщение другому хосту. А широковещательная рассылка , когда один хост отправляет сообщение либо всем хостам (обычно работает для всех хостов в одной подсети), либо всем хостам в одной конкретной подсети. И последний способ — это мультикаст , когда один хост отправляет сообщение определенной группе других хостов.

Адрес хоста

Все остальные адреса в подсети являются адресами хостов. Эти адреса могут быть назначены сетевым устройствам, таким как компьютер. Вот пример как выглядят адреса в подсети 192.168.5.12/30 . Маска /30 является двоичной 11111111.11111111.11111111.111111 00 .

IP-адрес двоичный тип адреса
192.168.5.12 11000000.10101000.00000101.000011 00 идентификатор сети
192. 168.5.13 11000000.10101000.00000101.000011 01 адрес хоста
192.168.5.14 11000000.10101000.00000101.000011 10 адрес хоста
192.168.5.15 11000000.10101000.00000101.000011 11 широковещательный адрес

Что такое маска подсети?

Маска подсети говорит нам, какая часть адреса является сетевой частью , а какая хостовой частью . Сетевая часть обозначает подсеть и используется для маршрутизации в эту подсеть. Хост-часть обозначает всех членов этой подсети и используется только в этой подсети. Маска подсети в IPv4 состоит из 32 бит и обычно представлена ​​с помощью точечно-десятичная форма . Действительная маска имеет единицы слева, за которыми следуют нули (после первого нуля могут быть только нули). Пример маски подсети: 255.255.255.0 .

Примечание: Маска подсети 255.255.255.254 не разрешена, так как она имеет 0 возможных хостов (эту маску можно использовать для некоторых специальных каналов точка-точка). Маска 255.255.255.255 адреса не подсети, а одного хоста.

В следующей таблице показаны сведения обо всех масках подсети.

CIDR десятичный количество адресов классовый подсетей
/1 128.0.0.0 2147483646 128 А 2
/2 192.0.0.0 1073741822 64 А 4
/3 224. 0.0.0 536870910 32 А 8
/4 240.0.0.0 268435454 16 А 16
/5 248.0.0.0 134217726 8 А 32
/6 252.0.0.0 67108862 4 А 64
/7 254.0.0.0 33554430 2 А 128
/8 255.0.0.0 16777214 1 А 256
/9 255.128.0.0 8388606 128 Б 512
/10 255. 192.0.0 4194302 64 Б 1024
/11 255.224.0.0 2097150 32 Б 2048
/12 255.240.0.0 1048574 16 Б 4096
/13 255.248.0.0 524286 8 Б 8192
/14 255.252.0.0 262142 4 Б 16384
/15 255.254.0.0 131070 2 Б 32768
/16 255.255.0.0 65534 1 Б 65536
/17 255. 255.128.0 32766 128 С 131072
/18 255.255.192.0 16382 64 С 262144
/19 255.255.224.0 8190 32 С 524288
/20 255.255.240.0 4094 16 С 1048576
/21 255.255.248.0 2046 8 С 2097152
/22 255.255.252.0 1022 4 С 4194304
/23 255.255.254.0 510 2 С 8388608
/24 255. 255.255.0 254 1 С 16777216
/25 255.255.255.128 126 1/2 С 33554432
/26 255.255.255.192 62 1/4 С 67108864
/27 255.255.255.224 30 1/8 С 134217728
/28 255.255.255.240 14 1/16 С 268435456
/29 255.255.255.248 6 1/32 С 536870912
/30 255.255.255.252 2 1/64 С 1073741824
/31 255. 255.255.254 0 1/128 С  
/32 255.255.255.255 1    

CIDR

Более короткой и простой формой представления маски подсети является форма бесклассовой междоменной маршрутизации (CIDR). Это IP-адрес, за которым следует косая черта (/) и количество битов в двоичном представлении маски подсети (или только число бит). Например, у нас есть IP-адрес 192.168.100.25 с маской подсети 255.255.255.240 , бинарная форма этой маски: 11111111.11111111.11111111.1111 0000 , поэтому представление CIDR будет 192.168.100.25/28 .

Примечание: CIDR — это не только форма представления, но и некоторые механизмы, такие как VLSM, агрегация и многое другое.

VLSM

Маска подсети переменной длины (VLSM) — это метод, на котором основан CIDR. Он позволяет размещать префиксы произвольной длины, он использует бесклассовая маршрутизация .

Подстановочная маска

Для некоторых специальных приложений (например, списка доступа Cisco IOS) существует обратная форма маски подсети, которая называется подстановочная маска . Мы можем использовать функции отрицания для двоичного представления маски подсети или взять каждый десятичный октет и вычислить 255 - октет . Например, маска подсети 255.255.255.240 имеет подстановочную маску 0.0.0.15 .

Классовая сеть

Старые версии интернет-протокола делили IP-адреса на 5 классов , каждый из которых определяет маску подсети. Разделение на классы осуществляется по первым битам IP-адреса. Маска подсети не отправляется с IP-адресом во время связи, поскольку она определяется IP-адресом.

класс значащие биты диапазон адресов маска маска CIDR примечание
класс А 0xxx 0 — 127.x.x.x 255.0.0.0 /8 общий
класс В 10xx 128 — 191.x.x.x 255.255.0.0 /16 общий
класс С 110x 192 — 223.x.x.x 255.255.255.0 /24 общий
класс D 1110 224 — 239.x.x.x     многоадресная рассылка
класс E 1111 240 — 255.x.x.x     зарезервировано

Бесклассовая сеть

Вскоре, после более широкого использования Интернета, стало очевидно, что архитектура классовой сети неэффективна и не масштабируема. Таким образом, новый дизайн сети был разработан с использованием VLSM и CIDR . Это называется бесклассовая сеть . Это позволило разделить классы на более мелкие подсети.

Суперсеть — агрегация

VLSM и CIDR позволяют нам использовать агрегацию нескольких смежных подсетей в одну суперсеть . Суперсети экономят место и ресурсы в процессе маршрутизации. Если у нас есть две подсети 192.168.0.0/24 и 192.168.1.0/24 , суперсеть будет 192.168.0.0/23 .

Расчет

Максимальное количество хостов и подсетей

Максимальное количество хостов и подсетей в конкретной подсети определяется маской подсети. Маска подсети делит IP-адрес на сетевую часть и хостовую часть на количество единиц и нулей. Итак, мы переводим маску подсети в двоичную форму или можем использовать маску CIDR и подсчитываем количество единиц и нулей ( количество нулей = 32 - количество единиц ). Сетевая часть адреса обозначается единицами в маске подсети, это означает, что мы можем менять биты в этой части и каждый раз мы будем получать другую подсеть, поэтому количество комбинаций в этой части равно количество подсетей . Но количество подсетей зависит от того, какую архитектуру адресации мы используем (я упоминал об этом в главе «Части IP-адреса»). Если мы используем CIDR, мы можем использовать весь сетевой префикс, так я понимаю современные подсети. Мы можем подсчитать количество подсетей , используя следующее уравнение.

 2  количество единиц  = количество подсетей 

Примечание: Это новая версия подсчета количества подсетей в соответствии с RFC 1812. В прошлом мы использовали RFC 950 и нам пришлось вычесть из этого числа 2 (для всех единиц и всех нулей адреса).

Я часто сталкиваюсь с ситуацией, когда люди думают о количестве подсетей по-разному. Я думаю, что это правильно для старых сетей, где мы не используем CIDR. Здесь нам нужно найти класс IP-адресов и посчитать количество подсетей только в этом классе.

 2  количество единиц в маске - количество единиц в классе  = количество подсетей 
   Пример:  
   У нас есть адрес  148.25.3.5/22 
   благодаря CIDR мы знаем, что количество единиц в маске подсети равно  22 , а количество нулей равно  32 - 22 = 10 
   1) количество подсетей для первой ситуации = 2  22  =  4 194 304 
   2) но для второй ситуации мы должны взять IP-адрес и по первым битам определить, что это  Class B  (маска /16)
      значит количество подсетей = 2  22-16  = 2  6  =  64  

Количество хостов — более простой и похожий принцип. Хостовая часть адреса обозначается нулями в маске подсети. Нам пришлось вычесть 1 для идентификатора сети и 1 для широковещательного адреса.

 2  количество нулей  - 2 = количество хостов 
   Пример:  
   У нас есть адрес  148.25.3.5/22 
   номер хоста = 2  10  - 2 = 1024 - 2 =  1022  

Два хоста из одной подсети?

У нас есть два IP-адреса с маской подсети, и мы хотим знать, принадлежат ли они одной подсети. Во-первых, маска должна быть одинаковой. Затем мы переводим IP-адрес и маску подсети в двоичную форму. Если часть, где в маске подсети стоят единицы, одинакова в обоих IP-адресах, они принадлежат одной и той же подсети.

   Пример:  
    IP-адрес 1:  192.168.5.13/22 , IP-адрес 2:  192.168.7.128/22 
    1) маски подсети одинаковые
    2) IP 1 двоичный:  11000000.10101000.000001  01.00001101
       Двоичный IP 2:  11000000.10101000. 000001  11.10000000
       маска подсети:  11111111.11111111.111111  00.00000000
    3) сетевая часть обоих адресов одинакова, поэтому они принадлежат к одной и той же подсети 

Идентификатор сети

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

   Пример:  
   IP-адрес:  10.217.123.7/20 
   бинарный IP: 00001010.11011001.01111011.00000111
   двоичная маска: 11111111.11111111.11110000.00000000
   побитовое И: 00001010.11011001.01110000.00000000
   десятичный:  10.217.112.0  

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

Широковещательный адрес подсети

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