Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Сетевые технологии > Зачем нужен адрес сети?


Автор: dm9 30.11.2004, 17:03
Всем привет.

Скажите, где используется адрес сети?

То есть пусть у меня есть сеть 170.153.0.0/16

Я не могу использовать в качестве IP-адреса 170.153.255.255 - broadcast, это понятно.
Но почему я не могу использовать 170.153.0.0 - т. н. адрес сети? Где фактически используется этот адрес? Чему противоречило бы разрешение использования 170.153.0.0 в качестве IP конкретной машины?

Автор: dargaard 30.11.2004, 17:16
У каждой подсети есть два броадкаст адреса - первый и последний адрес в подсети. Т.е. 170.153.0.0 в твоем случае тоже будет броадкастным адресом.

В обшем случае если известен адрес сабнета и маска, то хост биты не должны быть всеми единицами или всеми нулями (в двоичном представлении). Хост биты определяются маскои/через CIDR.
В твоем случае хост биты - 16 битов, при всех нулях ето 170.153.0.0, при всех единицах - 170.153.255.255

К слову если у тебя сеть класса С (200.100.1.х) разбита на 8 сабнетов
(по 32 адреса/хоста в каждом ):
сабнет 1: 200.100.1.0
сабнет 2: 200.100.1.32
сабнет 3: 200.100.1.64
...
сабнет 8: 200.100.1.224

то к слову в сабнете 200.100.1.0 , 200.100.1.0 и 200.100.1.31 будут броадкастными адресами. Также для сабнета 200.100.1.32 адреса .32 и 63 будут броадкастными. И следовательно такие адреса давать машинам нельзя

Автор: dm9 30.11.2004, 17:19
Спасибо.
А зачем нужно два бродкаста?

Автор: Akina 30.11.2004, 17:31
Цитата(dm9 @ 30.11.2004, 18:19)
А зачем нужно два бродкаста?

Последний - внутренний бродкаст. Для передачи от узла той же (под)сети.
Первый - внешний бродкаст. Для передачи бродкаста в сеть извне.

Автор: dargaard 30.11.2004, 17:32
Насколько я понимаю последний адресс используется как броадкаст , а первый как адрес подсети: в моей подести при пинге 192.168.1.255 пингуются все включая роутер, если пинговать 192.168.1.0 то пинг идет только на машины которые в сабнете (т.е. роутер не отвечает на пинги).

Автор: dm9 30.11.2004, 18:06
dargaard, у меня в сети x.x.x.255 - пингуется, ответ идёт от x.x.x.8 (не знаю по какому принципу, но, видимо, просто 1 из компов сети).
А вот x.x.x.0 не пингуется...

Цитата(Akina @ 30.11.2004, 17:31)
Первый - внешний бродкаст. Для передачи бродкаста в сеть извне.


То есть x.x.x.0 и не должен пинговатся? А вот если я пускал бы пинги извне, x.x.x.0 прошёл бы, а x.x.x.255 - нет?

Akina, а можешь привести примеры приложений, в которых надо различать, откуда пришёл броадкаст - извне или из своей же сети?
Добавлено @ 18:12
PS Тогда у dargaard'a 192.168.1.0 пингуется потому что у него стоит не интеллектуальный свитч, а простой хаб, который не блокирует броадкаст на x.x.x.0 при посылке его одним из компов сети? То есть это:

Цитата(Akina @ 30.11.2004, 17:31)
Последний - внутренний бродкаст. Для передачи от узла той же (под)сети.
Первый - внешний бродкаст. Для передачи бродкаста в сеть извне.


является неким стандартом, который надо соблюдать, если есть возможность? То есть желательно отсекать броадкасты на x.x.x.0, посланные изнутри и x.x.x.255, посланные снаружи?

Автор: Akina 30.11.2004, 18:16
dm9
Это было где-то закопано в правилах маршрутизации... где - не помню... как-то натолкнулся, прочел, запомнил... давно было - счас не вспомню где.

Автор: dm9 30.11.2004, 19:56
Я спросил у преподавателя - ответ достаточно очевиден - адреса сети используются в таблицах маршрутизации... smile
А то, что это второй броадкаст - уже, видимо, вторично.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)