Що таке маска підмережі та яка різниця між маскою підмережі 255.255.255.0 та 255.0.0.0?


40

Мій маршрутизатор DSL / WiFi, наданий моїм провайдером, має внутрішню IP-адресу 10.0.0.138, адреси, надані DHCP, у форматі 10.0.0.xxx.

Тепер я хочу почати використовувати статичні IP-адреси у своїй локальній мережі, і я не знаю, що надати для маски підмережі.

Що таке маска підмережі?

Чи слід використовувати 255.255.255.0або 255.0.0.0як маску підмережі? Яка різниця?


4
Отже, по суті "маска підмережі" вказує, яка частина IP-номера є релевантною. Оскільки я використовую лише останню триплету, я б використав 255.255.255.0, щоб замаскувати перші три трійки. Дякую за відповіді!
— Torben Gundtofte-Bruun

правильно. Для вашої приватної мережі це не має значення. Важливо лише, якщо ви хочете розділити різні частини вашої мережі.
— StampedeXV

1
Він точно не «маскує» жоден октет (адже він взагалі не повинен надавати 8-бітову межу). Він просто позначає, яка частина ІР є мережевим ідентифікатором, а яка - ідентифікатором хоста.
— MDMarra

Трохи спрощення: Все, що має ту саму маску підмережі, може спілкуватися один з одним безпосередньо, не проходячи маршрутизатор (адже маршрутизатор НЕ повинен використовуватися). Все, що хоче поговорити з хостом з іншою маскою підмережі, потрібно пройти маршрутизатор (або IP, який є шлюзом за замовчуванням), щоб дістатися до цього хоста.
— ЛоуренсC

Додано superuser.com/questions, що докладно пояснює підмережу IPv4. (Питання - це копія канонічної відповіді на сервер Default).
— Геннес

Відповіді:


29

Нуль у масці підмережі відповідатиме xxxвашій IP-адресі. Якщо вам потрібно більше 255 різних адрес, вам доведеться змінити IP-адреси DHCP на 10.0.xxx.xxx (трансляція IP 10.0.255.255), а маску підмережі - на 255.255.0.0.

Теоретично 255.0.0.0 є дійсною маскою підмережі для 10.0.0.0 до 10.255.255.255 адрес. У цій статті вікіпедії відображаються дійсні адреси приватних мереж.

Але у вашому випадку (10.0.0.xxx), ви повинні використовувати 255.255.255.0.


22

Швидше за все, вам належить маска підмережі 255.255.255.0.

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

Отже, якщо IP-адреса комп'ютера 192.168.1.104, а його маска підмережі - 255.255.255.0, то комп'ютер (і кожен інший пристрій, приєднаний до тієї ж мережі) вважатиме, що кожен IP-адрес у локальній мережі цього комп'ютера буде у форматі 192.168.1. xxx , причому xxx є єдиною частиною, яка буде відрізнятися. Так само, якщо маска підмережі становить 255.255.0.0, то комп’ютер вважатиме, що кожна IP-адреса в її локальній мережі буде у форматі 192.168. ххх . ххх .

Підмережа в мережі не дуже корисна в домашній мережі, як-от ваша. В основному використовується у великих мережах (з 255+ комп’ютерами) для зменшення зайвої активності в мережі. MarkM надав це у коментарях:

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

Це пояснення дуже грубе і схематичне, тому, будь ласка, пробачте мене, якщо я зробив помилку чи дві.


2
Однією з найбільших переваг підмережі у великій мережі є зменшення трансляційного трафіку. Якщо у вас в одній підмережі є тисячі хостів, ваші комутатори будуть задушені на передачах ARP, DHCP та інших трансляціях. У домашній мережі зазвичай немає великої потреби, якщо ви не хочете чогось типу гостьової бездротової локальної мережі, яка не має жодної маршрутизації, доступної для вашої основної домашньої мережі.
— MDMarra

10

Маска мережі використовується для ідентифікації того, яка частина IP-адреси представляє мережеву адресу, а яка частина - адресу машини * .

Розглянемо мережу класу A від 10.0.0.0 до 10.255.255.255 (це призначений "приватний" блок класу A, тобто пакети, призначені для цих адрес, не будуть маршрутизовані). У двійкових адресах: 00001010.00000000.00000000.00000000 до 00001010.11111111.11111111.11111111. Маска мережі генерується шляхом призначення 1 для кожного біта в цих адресах, що не змінює IE:

00001010.00000000.00000000.00000000
00001010.11111111.11111111.11111111
-----------------------------------
11111111.00000000.00000000.00000000

Що перетворює в 255.0.0.0, класичну мережеву маску класу A.

* Насправді, щоб отримати мережеву адресу з IP-адресою, ви просто зробите логічний І. Наприклад, для маски мережі 255.0.0.0 та IP-адреси 10.0.0.1:

00001010.00000000.00000000.00000001
11111111.00000000.00000000.00000000
-----------------------------------
00001010.00000000.00000000.00000000

І 00001010.00000000.00000000.00000000 перекладається на 10.0.0.0, що справді є мережевою адресою.

Зауважте, що для домашньої мережі вам зазвичай не потрібна мережа класу A (чи потрібно вам більше 255 адрес?), І таким чином ви можете використовувати 255.255.255.0 в якості мережевої маски та / або використовувати мережу класу C (наприклад, 192.168.1.0).


Арг! Не бінарний! щілини зап'ястя
— Джош Хант

5
На практиці вже ніхто не використовує заняття. Зазвичай він викладається лише як урок історії. Замість цього використовується CIDR тепер en.wikipedia.org/wiki/Classless_Inter-Domain_Routing
— MDMarra

не знаю, що CIDR - це простіше зрозуміти ... :)
— шарлатанний кіхот

2
Ви все ще можете працювати на межах класу і нормально функціонувати в мережі, але вона застаріла. CIDR / 8/16 та / 24 представляють те, що раніше використовували класи A, B і C.
— MDMarra

1
Це повинно допомогти вашій підмережі обчислити страхи :) subnet-calculator.com/cidr.php
— MDMarra

1

Більш технічно, маска підмережі допомагає машинам ідентифікувати номер мережі, пов’язаний із заданою IP-адресою. 255 являє собою всі 1 для цього байта адреси, і коли ви виконайте трохи розумне І між адресою та маскою, ви отримаєте номер мережі назад. Залишився номер машини

Так

IP Address 192.168.1.1
Subnet mask 255.255.255.0
Network Number 192.168.1.0
Host Number 1
Address Range 192.168.1.1 to 192.168.1.255

По черзі,

IP Address 192.168.1.0
Subnet mask 255.255.254.0
Network Number 192.168.0.0
Host Number 1
Address Range 192.168.0.1 to 192.168.1.255

Ця друга конфігурація залишає 9 біт для номера хоста (у випадку, коли у вас буде більше 255 хостів). Налаштування маски підмережі дає вам більше адрес хостів і менше мереж, або навпаки, залежно від того, додаєте чи вилучите 1


Можливо, буде більш корисно показати доступні діапазони адрес у вашому прикладі. 192.168.1.1-192.168.1.254 та 192.168.0.1-192.168.1.254
— MDMarra

Гарний дзвінок, зроблено. Я, мабуть, мав би вибрати більш очевидний приклад, це може бути трохи тонко ...
— Кріс Томпсон,

1

Оскільки Інтернет-провайдер torbengb надав йому маршрутизатор (або сказав йому налаштувати його маршрутизатор) з адресою 10.0.0.138, це приводить мене до підозри, що ці клієнти Інтернет-провайдерів діляться адресним простором 10.0.0.0; в іншому випадку більшість poeple налаштовує маршрутизатор на 10.0.0.1 або 192.168.0.1 або подібне.

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

Якщо він впевнений , що його маршрутизатор працює з NAT, то він, ймовірно, може використовувати що-небудь від / 8 до / 24.

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

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


0

Я відповім на практичне запитання. Ви завжди повинні використовувати "правильну" маску підмережі, якщо ви не є адміністратором мережі чи добре не розумієте побітну математику.

Оскільки ви, мабуть, не використовуєте "справжній" DCHP-сервер, ви повинні використовувати маску підмережі, видану вашим сервером DHCP для всіх систем, включаючи статичні адреси. Ви також повинні переконатися, що ваші статичні номери не будуть знаходитися в просторі, з якого виділяється ваш DHCP-сервер.

Якщо ви надаєте свою ОС, я впевнений, що ми можемо дати вам правильну команду для відображення вашої поточної маски підмережі в клієнтській системі DHCP.

В ідеалі ви б використовували 255.0.0.0, тому що для 10.0.0.0, якщо ви використовували 255.255.255.0, у вас міг бути лише простір 256 адрес (не велика справа, але хто знає, ви сказали, що використовуєте .138) , PLUS має забезпечити маршрутизацію до інших підмереж 10.0.0.0 (і, сподіваюся, це не так).

Це може мати значення для людей, які мають незвичну конфігурацію роботи від дому, як-от ssh тунелі.


3
Тут немає жодної реальної причини використовувати 8-бітну маску. У цьому немає нічого поганого, але це погана форма. Ви можете використовувати 23-бітну маску (255.255.254.0) і мати додаткові 254 адреси. У підмережі / 24 немає 256 адрес, оскільки .0 та .255 зарезервовані відповідно для мережевого ідентифікатора та широкомовної адреси.
— MDMarra
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.