255.255.255.255 проти 192.168.1.255


18

Ми намагаємося налагодити деякі програми, які виконують трансляцію.

Яка різниця між широкомовною адресою 255.255.255.255 і як, наприклад, повідомляється ifconfig, Bcast: 192.168.1.255


Це питання та відповіді пояснюють.
Рон Мопін

Відповіді:


37

Адреса широкомовної передачі завжди відносно даної мережі, вона не сама трансляція сама по собі ; коли у вас є мережа, ви можете обчислити її адресу широкомовної передачі, замінивши всі хости-біти на 1s; простіше кажучи, широкомовна адреса - це найбільша пронумерована адреса, яку ви можете мати в мережі, тоді як мережева адреса - найнижча (з усіма хостами, встановленими на 0); тому ви не можете використовувати жоден з них як фактичні адреси хостів: вони зарезервовані для цього використання.

Якщо ваша мережа 192.168.1.0/24, то ваша мережева адреса буде 192.168.1.0, а ваша широкомовна адреса - 192.168.1.255.

Якщо ваша мережа 192.168.0.0/16, то ваша мережева адреса буде 192.168.0.0, а ваша широкомовна адреса - 192.168.255.255.

І так далі...

255.255.255.255 - це спеціальна широкомовна адреса, що означає "ця мережа": вона дозволяє надсилати широкомовний пакет до мережі, до якої ви підключені, фактично не піклуючись про його адресу; у цьому аналогічно 127.0.0.1, що є віртуальною адресою, що означає "локальний хост".

Більше інформації тут: http://en.wikipedia.org/wiki/Broadcast_address


Чи вважається 127.0.0.1 "віртуальною адресою"? Я розумію, що це реальна адреса, і RFC каже, що вона повинна вказувати на віртуальний інтерфейс зворотного зв'язку. Однак я бачив випадки, коли пристрій насправді запитує мій DNS-сервер на 127.0.0.1.
Белмін Фернандес

1
Можливо, моє вживання слова "віртуальний" було трохи спрощеним, але це справді зарезервована адреса, яка не може належати до будь-якого фізичного інтерфейсу і ніколи не повинна бачитись поза хостом; якщо щось запитує ваш сервер DNS, хто є 127.0.0.1, він повинен працювати так швидко, як це можливо, до найближчого класу IP :-p
Massimo

"це дозволяє надіслати широкомовний пакет до мережі, до якої ви підключені" ... що робити, якщо ви підключені до декількох мереж? Чи всі пакети трансляції надсилаються всім?
Натан Осман

11

Щоб додати те, що Массімо заявив у своїй відповіді:

255.255.255.255 вважатиметься адресою широкомовної передачі фізичного рівня, тоді як 192.168.1.255 вважатиметься адресою широкомовної передачі мережевого рівня. ARP генерував би трансляцію фізичного рівня, тоді як NetBIOS генерував би трансляцію мережевого рівня.


11

В принципі, 255.255.255.255 - "глобальна" широкомовна адреса, а це означає, що стек IP повинен пересилати пакет до всіх мережевих інтерфейсів, а маршрутизатори, налаштовані для пересилання трансляцій, повинні надсилати їх.

На практиці майже немає маршрутизаторів, які пересилають трансляції, і багато стеків просто надсилають одну копію пакета в інтерфейс, на який вказує маршрут за замовчуванням.

Адреса широкомовної підмережі використовується для вибору конкретного інтерфейсу. В обох випадках вони повинні бути відображені на адресу мережевого рівня широкомовної передачі (яка була б FF: FF: FF: FF: FF: FF для Ethernet).

Взагалі, використання 255.255.255.255 - погана ідея, оскільки існує декілька налаштувань, де інтерфейс із маршрутом за замовчуванням є абсолютно невірним вибором. Вибір інтерфейсу явно краще, але це потрібно робити ретельно.

Моя інша пропозиція буде використовувати багатоадресну передачу, якщо це має сенс для вашої програми. Ті ж застереження, що і для трафіку трансляції, все ще застосовуються, але це дозволяє незацікавленим хостам швидко ідентифікувати ваші пакети, і це дозволяє мережевим менеджерам встановлювати конкретні правила пересилання для вашого протоколу.


1
Коли я шукаю 255.255.255.255, одним із перших результатів є RFC 919 . У тому , що RFC Я знайшов цю пропозицію: «На адресу 255.255.255.255 позначає широкомовні по локальній мережі апаратних засобів, які . Чи не повинні пересилатися » (курсив мій) Так що, коли ви пропонуєте маршрутизатори можуть бути налаштовані на пересилання пакетів, то це не ймовірно.
kasperd
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.