Гаразд, тому я розумію, як маски підмережі використовуються для поділу мережі на підмережі, але моє питання: чому кожен комп'ютер у мережі повинен знати маску підмережі, а не лише маршрутизатор?
а пристрої, які люди називають маршрутизаторами, як правило, не є просто маршрутизаторами. Тому люди іноді використовують такі терміни, як NAPT маршрутизатор, або домашній маршрутизатор, або споживчий маршрутизатор, щоб припустити, що це не просто маршрутизатор. Щоб зробити висновок, що вони не просто маршрутизатори, ці пристрої можуть робити NAPT (який не маршрутизується), і вони мають вбудований комутатор (комутатор виконує з'єднання, яке не маршрутизує - відмінність між комутатором і мостом трохи не настільки чітко визначені - можна сказати, що міст часто має два порти і з'єднує різні мережеві середовища (наприклад, Ethernet і не-Ethernet), тоді як комутатор матиме декілька портів і однаковий мережевий носій). Перемикач виконує мости.
Якби комутатор був відокремлений від "маршрутизатора", тоді, дійсно, було б зрозуміліше. Коли IP-адреса знаходиться в одній мережі, то пакет спрямовується на йде по кабелю до наступного фізично, який є комутатором, і в кінцевому підсумку призначений для якогось іншого комп'ютера в мережі (якщо тільки це не був керований комутатор, і ви підключалися до комутатора, наприклад, telnet або http, і комутатор мав власний ip ), а оскільки пакет не призначений для іншої мережі, пакет не потрапить до маршрутизатора. Коли це призначено для комп'ютера в іншій мережі, він, звичайно, все одно переходить до комутатора, але потім продовжує після цього до маршрутизатора, (комутатор спрямовував пакет до маршрутизатора і адреса призначення MAC пакета, що надходить на комутатор був би MAC-адресою маршрутизатора), і маршрут буде виводити його з правильного інтерфейсу маршрутизатора.
З цими речами, які зазвичай називаються маршрутизаторами, у них є комутатори (наприклад, не професійні маршрутизатори cisco / janiper), тоді комутатор знаходиться всередині. Але це лише місце розташування комутатора. Це все-таки тоді, коли IP включений та сама мережа, тоді пакет адресований комутатору, а не маршрутизатору. І він іде лише до комутатора всередині роутера і не доходить до маршрутизатора.
Я міг би це зрозуміти, якби кожен комп'ютер був фізично з'єднаний один з одним дротом,
що ви тут маєте на увазі .. Якби всі комп'ютери в цілій мережі були фізично підключені дротом .. то, мабуть, вам не знадобився б комутатор або маршрутизатор. Те, що ви описуєте, трохи схоже на оригінальну мережу Ethernet .. і якщо всі вони з'єднані з дротом, це, швидше за все, не буде такою великою мережею. І як би там не було провід, як ви звикли. У ньому були комп'ютери, підключені по дорозі до нього за допомогою "кранів". Тож я не знаю, чому ви просто кинули це речення.
але всі пакети все одно повинні пройти через маршрутизатор.
тож ви маєте на увазі відкинути цю ідею про всі комп'ютери, пов'язані з дротом без маршрутизатора.
І ні, навіть у вашому будинку, вони не проходять через роутер щоразу. Навіть із «домашнім маршрутизатором» називайте це Інтернет-коробкою. Вони переходять до вимикача в ньому.
Скажемо, що у мене є комп'ютер у мережі 192.168.0.0/255.255.255.0, який має IP 192.168.0.1.
Якщо цей комп'ютер спробує дістатися до комп'ютера за межами підмережі, скажімо, 192.168.1.1, він передає повідомлення маршрутизатору,
до вимикача, потім від перемикача він переходить до маршрутизатора
маршрутизатор ідентифікує, що IP знаходиться за межами IP-діапазону підмережі, і замість того, щоб передавати його по підмережі, він передає його в мережу, до якої він підключений (можливо, інший маршрутизатор).
добре маршрутизатор визначає, для чого мережевий інтерфейс. Він передає з одного інтерфейсу в інший інтерфейс. Одне відмінність - окрім того, який інтерфейс - це те, чи мережа безпосередньо підключена чи ні. Він може перейти на комутатор, потім на комп'ютер. Або він може відправити на комп’ютер. Або якщо мережа не підключена безпосередньо, вона перейде на інший маршрутизатор.
і ваше останнє речення було
він передає повідомлення маршрутизатору,
і що тоді, ти раптом вирішив припинити писати?
маршрутизатор ідентифікує, що IP знаходиться за межами IP-діапазону підмережі, і замість того, щоб передавати його по підмережі, він передає його в мережу, до якої він підключений (можливо, інший маршрутизатор).
ну, я б не ставлю це так. Кожен інтерфейс маршрутизатора має різний діапазон IP.
Але, якщо у вас є маршрутизатор для споживачів або домашній маршрутизатор, це відбувається як роутер з двома інтерфейсами, одна ваша сторона має підключений до нього комутатор. І кілька портів - це порти комутатора.
Отже, якщо ви думаєте з точки зору частини маршрутизатора, це не так, як о, це всередині підмережі, а це поза, тому що потенційно існує багато мереж. На кожному інтерфейсі є по одному. І маршрутизатор не збирається передавати його назад в ту ж мережу, з якої прийшов. Причина, чому вона дійшла до роутера в першу чергу, полягає саме в тому, що комутатор (який він досяг першим), побачив MAC-адресу і так побачив, що це не MAC-адреса маршрутизатора.
Комп'ютер, який відправив пакет, перевірить, чи IP-адреса пакета знаходиться у власній мережі, або в тій самій мережі, і потім, виходячи з цього, вибере відповідну MAC-адресу. Або MAC-адреса комп'ютера, якому призначено (якщо комп'ютер знаходиться в одній мережі). Або (якщо комп'ютер знаходиться на іншому інтерфейсі роутера), то це буде MAC-адреса маршрутизатора. Я думаю, що це може відповісти на назву вашого запитання досить безпосередньо, чому комп'ютер повинен знати маску підмережі .. У системі TCP / IP як це є. Ось як це працює, комп'ютер вибирає відповідний рівень 2 адреса, наприклад, для Ethernet, MAC-адреса.