Для ЛЛ: eval – отдельная редакция, остальное очевидно.
Давно я не обновлял у себя на стенде Windows server, на прошлой неделе добрался. Скоро и в прод – уже вышли кумулятивы: 2025-01 Cumulative Update for Microsoft server operating system version 24H2 for x64-based Systems (KB5050009) 2025-01 Cumulative Update for .NET Framework 3.5 and 4.8.1 for Microsoft server operating system version 24H2 for x64 (KB5049622)
Конечно, не второй сервис пак, но что ж поделать. Почему это важно: поддержка 2012R2 закончилась, поддержка 2016 закончилась, скоро закончится и поддержка для 2019. Плюс в 2025 обещают всякие приятные вещи, ускорения и улучшения. Мне интересно посмотреть на GPU partitioning, и улучшенный S2D.
Картинка от 2019, суть та же
MS предлагает 5 вариантов установки и обновления до MS Server 2025: in-place upgrade, Installation, Migration, Cluster OS Rolling Upgrade, License conversion. Ничего особенно нового, ничего интересного. Прочитали, проверили на стенде, и в бой. Разве что внезапный KB5044284, и прочие известные проблемы. Так я и думал, запуская привычный Setup с ISO – и увидел, что обновляться мне не положено. Пункт «сохранить файлы и настойки» - серый, и не выбирается. Давно такого не видел, удивился. Пошел посмотрел reg query "HKLM\SYSTEM\CurrentControlSet\Control\Nls\Language" /v Installlanguage
Но нет, все нормально, английский. Пошел читать, и в сегодня лет узнал, что с точки зрения MS существует не 4 редакции Windows Server (Standard core, Standard desktop, Datacenter core, Datacenter desktop), а 8 - Windows Server 2025 Standard Evaluation, Windows Server 2025 Standard Evaluation (Desktop Experience), Windows Server 2025 Datacenter Evaluation, Windows Server 2025 Datacenter Evaluation (Desktop Experience) – и это не одно и то же. Я думал, что разница в лицензировании, но ошибался. Сейчас добавился Datacenter: Azure Edition (ServerTurbine).
Как посмотреть остаток здоровья известно, (Slmgr /dli или DISM /online /Get-CurrentEdition или Get-ComputerInfo | select OsName, WindowsEditionId) , как перезарядить на 180 дней – тоже, (Slmgr /rearm), прочее скучное тоже не новость.
dism /image:c:\mount /get-currentedition dism /image:c:\mount /get-targeteditions dism /image:c:\mount /set-edition:ServerStandard На этой строке тоже не забывайте поменять настройки, если надо. dism /unmount-wim /mountdir:c:\mount /commit
Все эти операции займут какое-то время – распаковка, запаковка. После этого можно будет запустить setup.exe, и обновиться по месту. Потом проверить, что получилось (DISM /online /Get-CurrentEdition)
Setup кривой. Пару минут после запуска о чем-то думает, только процесс виден в списке процессов, при том что у меня на стенде 128 Gb памяти. Дальше ничего интересного, сколько-то перезагрузок, и готово.
Настройки сохраняет, из тестового домена система не вылетела. Пишут, что так обновлять можно почти все – не знаю, не знаю. В случае Exchange, MS SQL и контроллера домена я бы так обновляться не стал.
После глобального сбоя интернета в рф перестал работать домашний интернет (МГТС) приходил мастер и вроде починил, хотя у меня ничего не работает, но у семьи на телефонах и пк всё исправно, я сначала думал, что интернет вирус, но и доктор веб и утилита виндовс ничего не показало, единственное чем я пользовался - утилитой ZAPRET для доступа в ютуб и дискорд, но её я снёс, а интернет так и не вернулся
P.S.
ПРОБЛЕМА ОБЩАЯ И НА ПК И НА ТЕЛЕФОНЕ ПОХОЖЕ И ТЕЛЕФОН И ПК ЧТО ТО СВЯЗЫВАЕТ, ОБЩИХ ПРОГРАММ НЕТ, НО ЧТО Я НЕ ЗНАЮ
ред2 - ping 8.8.8.8 не работает, ресет роутера тожеА!
Модуль secrets используется для генерации криптографически стойких случайных чисел, подходящих для управления такими данными, как пароли, аутентификация учетной записи, токены безопасности и связанные с ними секреты.
В частности, secrets следует использовать вместо генератора псевдослучайных чисел по умолчанию в модуле random, который предназначен для моделирования и симуляции, а не безопасности или криптографии.
Для ЛЛ: 2012 R2 в 2025 году обновить не очень просто
Примечание: текст написан как заметка по troubleshooting, содержит лишние подробности.
Коллеги пришли плакать в личку – есть, говорят, на свете педобиры, а есть некрофилы. Их некрофилы хотят странного, любви, но без взаимности – чтобы обвешанная непонятно чем Windows server 2012 R2 работала, и ставила все патчи. Коллег понять можно –хваленое импортозамещение регулярно не работает никак, кроме как на выставке, а соблюдать приличия, хотя бы в части патчей, надо.
В чем проблема. Windows Server 2012 R2 давно снят с поддержки: Mainstream End Date - Oct 9, 2018, Extended End Date - Oct 10, 2023. Запомним эту дату, она нам еще будет нужна.
Но, по каким-то причинам*– к нему заявлена поддержка Extended Security Update Year 1, Extended Security Update Year 2, Extended Security Update Year 3 – до 2026 года. * может, опять военные – MS поддерживала Windows XP для US NAVY до 2016 года и до сих пор поставляет «всякое».
Но у коллег проблема – SSU ставится, а rollup не ставится, и все тут. И настройки сбрасывали, и папку удаляли, и DISM делали – не идет каменный цветок у Данил мастеров. Попросили меня.
Я не врач, но посмотреть могу.
Первым делом пришлось поискать у себя дистрибутив 2012 R2 c Microsoft Volume Licensing Service Center (VLSC). Всякого добра у меня в загашнике было, и 2003 сервер, и даже настоящий оригинальный Windows 2000 в коробочке, а 2012 R2 нет. Пошел побираться. Нашел en_windows_server_2012_r2_with_update_x64_dvd_4065220, почему-то на интернет архиве. Скопировал – пусть будет! Попутно поискал по сусекам, по амбарам, у старых некрофилов (брал у них Nowell 4 не очень давно).
Microsoft Windows Server 2012 R2 RTM MSDN SW_DVD5_Windows_Svr_Std_and_DataCtr_2012_R2_64Bit_English_Core_MLF_X19-05182.ISO MD5 83BDF8034BCB019A8F001BAEEAB27326 SHA1 6823C34A84D22886BAEA88F60E08B73001C31BC8 SHA256 8BA8961E1CF10570A639F607963CFF9FF7EEDC42398F9F4D3B8670D5D9D3B1FF
Windows Server 2012 R2 with Update 1 SW_DVD9_Windows_Svr_Std_and_DataCtr_2012_R2_64Bit_English_-3_MLF_X19-53588.ISO MD5 B52450DD5BA8007E2934F5C6E6EDA0CE SHA1 D4B28F350981A7C3306DD409B172AEA10D8599AC SHA256 C15E6E25377FAECF7E6D6B23723553211A4BC043773A62A06FBE2781F7E9F82E
Наверное, у кого-то где-то можно было найти что-то свежее с VLSC, но, чем богаты.
Поставил последний, получил чистый свежий билд 6.3.9600. Надо было посмотреть (Get-ItemProperty -Path c:\windows\system32\hal.dll).VersionInfo.FileVersion потому что [System.Environment]::OSVersion.Version , оно же [Environment]::OSVersion ничего не показывает, но я не посмотрел.
Включил авто обновление. Выключил IE Enhanced security. Выключил IE Protected mode. – с ними не скачать хром, а IE из комплекта уже не может обработать https://www.catalog.update.microsoft.com/
Скачал хром. Скачал notepad++ Пошел, как пишут, скачал Windows Server 2012 R2 Update (KB2919355) – почему-то состоящий из 7 разных обновлений, но я взял только windows8.1-kb2919355-x64_e6f4da4d33564419065a7370865faacf9b40ff72.msu Не успел я его поставить, потому что сел пить чай с пирожными, как Win update выдала – вам надо поставить 112 важных обновлений, и 5 не очень важных.
Самое большое - Update for Windows Server 2012 R2 (KB3000850) от 4/14/2015 и затем 2023-01 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5022352)
Нажал кнопку «давай обновляйся» и отправился дальше по делам – пускай работает железный паровоз автоматизация.
Обновил, обновил еще раз, еще раз перезагрузил. Сделал $Hotfix = get-hotfix ; $Hotfix.count Всего поставилось 124 обновления, включая не обязательные.
Посмотрим, что там наставилось. Get-HotFix | Sort-Object -Property HotFixID -Descending
Первым номером идет 2023-09 Servicing Stack Update for Windows Server 2012 R2 for x64-based Systems (KB5030329), вторым - 2023-01 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5022352)
Так, а что насчет 2024-10 Servicing Stack Update for Windows Server 2012 R2 for x64-based Systems (KB5044411)? главное, не спутать его с 2024-10 Servicing Stack Update for Windows Server 2012 for x64-based Systems (KB5044413)
Я спутал. Поищем: 2024-12 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5048735)
Get-HotFix | Where-Object { $_.HotFixID -like 'KB50*'} Индейская национальная народная изба, а не KB5044411
Индейская национальная народная изба
Есть только эти два 2023-09 Servicing Stack Update for Windows Server 2012 R2 for x64-based Systems (KB5030329) 2023-01 Security Monthly Quality Rollup for Windows 8.1 for x64-based Systems (KB5022352) так что фильтр Where-Object работает, но обновлений нет.
Ладно, что там после 2023-01 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5022352) ? 2023-02 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5022899)
Скачаю. 2023-02 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5022899) windows8.1-kb5022899-x64_00d16db3cfda0f18dc89755faebb4aa12aba2cc7.msu
И, чтобы сразу проскочить до сентября 2023, как SSU, скачаю
2023-09 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5030269) windows8.1-kb5030269-x64_4f5c3c75b71207ef100ce60f2ad8683e22eb20b0.msu
Ставить его (2023-02 KB5022899) лучше из IPMI или VM консоли – потому что вот установка запустилась, вот предложила перезагрузку – и дальше ничего. На экране VM консоли ничего не происходит, CTRL-ALT-DEL не проходит, и минут 5 (у меня на тесте) только часы идут.
Ставим, смотрим и … Get-HotFix | Where-Object { $_.HotFixID -like 'KB502289*'} показывает ничего, зато Get-HotFix | Where-Object { $_.HotFixID -like 'KB50*'} показывает, что я немного ошибся – в системе есть 2023-10 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5031419)
Вот так фокус. Ставил 2023-02 KB5022899, а появились: 2023-10 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5031419) 2023-10 Security and Quality Rollup for .NET Framework 4.8 for Windows Server 2012 R2 for x64 (KB5031003)
Причем, похоже, это не я его поставил посреди ночи, а Windows update. Хотя он и писал, что обновлений больше нет, но они все же есть. Не очень понятно как так вышло.
Мне бы на этом месте сделать скриншот и снапшот, но я не сделал. После 2023-09 Servicing Stack Update for Windows Server 2012 R2 for x64-based Systems (KB5030329), идет 2023-11 Servicing Stack Update for Windows Server 2012 R2 for x64-based Systems (KB5032308)
И он, внезапно, ставится. Но, после установки проверим – все ли на месте. Get-HotFix | Where-Object { $_.HotFixID -like 'KB5032*'}
Что насчет 2023-11 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5032249) ?
Не хочу проверять. Сначала поставлю: 2024-01 Servicing Stack Update for Windows Server 2012 R2 for x64-based Systems (KB5034587) – поставилось 2024-02 Servicing Stack Update for Windows Server 2012 R2 for x64-based Systems (KB5034866) – поставилось 2024-03 Servicing Stack Update for Windows Server 2012 R2 for x64-based Systems (KB5035968) – поставилось
Прыгну сразу к 2024-10 Servicing Stack Update for Windows Server 2012 R2 for x64-based Systems (KB5044411) – поставилось
Вроде, все на месте. Завершающий этап, пробую: 2024-12 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5048735)
Еще раз: ставить его (2024-12 KB5048735) лучше из IPMI или VM консоли – потому что вот установка запустилась, вот предложила перезагрузку – и дальше ничего. На экране VM консоли ничего не происходит, CTRL-ALT-DEL не проходит, и минут 5 (у меня на тесте) только часы идут.
Ставилось обновление как-то настолько долго, зависнув на 96%, что я не стал следить за скоростью процесса. Что-то прошло, произошло, но потом Get-HotFix | Sort-Object -Property HotFixID -Descending | Select-Object -First 10 KB5044411 на месте, KB5048735 отсутствует.
Согласно C:\Windows\Logs\CBS\CBS.log
Где-то до строки 13350 – 00000253 Begin executing advanced installer phase 40 (0x00000028) index 276 Все шло нормально. Даже до строки 13450 - 00000261 Begin executing advanced installer phase 50 CSI 00000262@2025 () Executing Process [76]"C:\Windows\Microsoft.NET\Framework\v4.0.30319
И потом оп, и откат обновления.
Исследование завершено.
Проблема подтверждена, что делать – не понятно. В обычной статье я бы сразу написал, какой я умный и сразу все понял, но это не так.
Попробую ставить подряд.
Установлено: 2023-10 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5031419) Следующий патч: 2023-11 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5032249)
Ставлю ставлю, ставится, рестарт, задумалось на 90% и откат обновлений. Запомним эту цифру, 90%
Отрицательный результат – тоже результат. Ставить все подряд –не работает. Придется читать, что там в логе.
Читаем логи. Тут нам Notepad++ и пригодится. Открываем C:\Windows\Logs\CBS\CBS.log Логи у меня были и 35 мб, и 128 мб. Чистого текста. В логе все хорошо: 98000 примерно строка: Exec: Staging Package: Package_3148_for_KB5032249~31bf3856ad364e35~amd64~~6.3.1.8, Update: 5032249-5445_neutral 000005d8 Performing 256 operations; 256 are not lock/unlock and follow: Потом 118000 Exec: Package: Package_568_for_KB5032249~31bf3856ad364e35~amd64~~6.3.1.8 is already in the correct state Exec: Package: Package_2191_for_KB5032249~31bf3856ad364e35~amd64~~6.3.1.8 is already in the correct state, current: Installed Exec: Package: Package_2886_for_KB5032249~31bf3856ad364e35~amd64~~6.3.1.8 is already in the correct state, current: Installed, targeted: Installed Exec: The Package or one of its Updates required a reboot so transaction commit was skipped, Package's changes need to be pended
Строка 123000 CBS Setting ExecuteState key to: ExecuteStateNone Setting RollbackFailed flag to 0
И, наконец, перезагрузка Trusted Installer signaled for shutdown, going to exit.
CBS Doqe: System reboot required CBS Perf: Doqe: Install ended.
CBS Doqe: q-uninstall: Inf: ntprint4.inf CBS Perf: Doqe: Uninstall ended. CBS Progress: UI message updated. Operation type: Update. Stage: 1 out of 1. Percent progress: 30.
Old component: [ml:364{182},l:362{181}]"Microsoft-Windows-SLC-Component-ExtendedSecurityUpdatesAI, Culture=neutral, Version=6.3.9600.21620, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=amd64, versionScope=NonSxS"
New component: [ml:364{182},l:362{181}]"Microsoft-Windows-SLC-Component-ExtendedSecurityUpdatesAI, Culture=neutral, Version=6.3.9600.21668, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=amd64, versionScope=NonSxS"
Install mode: uninstall
И где-то в районе 125500 строки:
CSI 00000002 ESU: Product = 8. CSI 00000003 ESU: Windows is not activated. 00000007 ESU: Network Retry Counts : 30 (0x0000001e) CBS Progress: UI message updated. Operation type: Update. Stage: 1 out of 1. Percent progress: 90.
На этом месте Штирлиц сунул руку в карман и подумал: это конец
00000024 ESU: Trying to Check IMDS Again LastError=HRESULT_FROM_WIN32(12002). Startup: Timed out waiting for startup processing to complete
Это уже можно гуглить,
No Updates for 2012 R2 Servers activated with ESU activated through Azure Arc
If installing the Extended Security Update enabled by Azure Arc fails with errors such as "ESU: Trying to Check IMDS Again LastError=HRESULT_FROM_WIN32(12029)" or "ESU: Trying to Check IMDS Again LastError=HRESULT_FROM_WIN32(12002)", there is a known remediation approach:
Download this intermediate CA published by Microsoft.
Install the downloaded certificate as Local Computer under Intermediate Certificate Authorities\Certificates. Use the following command to install the certificate correctly:
certutil -addstore CA 'Microsoft Azure TLS Issuing CA 01 - xsign.crt'
Сертификаты я поставил, инсталл, ребут – а все равно, 90% ..
Just to bump this.... Issue popped up again this month. After a case with MSFT, had to install the Microsoft Azure RSA TLS Issuing CA 04 with thumbprint BE68D0ADAA2345B48E507320B695D386080E5B25 from Azure Certificate Authority details | Microsoft Learn
Download and install the Extended Security Updates (ESU) Licensing Preparation Package.
For Windows Server 2012 R2 or Windows Server 2012 R2 Embedded, see the Extended Security Updates (ESU) Licensing Preparation Package that is dated August 10, 2022 (KB5017220).
Все понятно. Расширенная поддержка «для всех» закончилась: Extended End Date - Oct 10, 2023.
Поэтому последние патчи «для всех» - 2023-10 Security Monthly Quality Rollup for Windows Server 2012 R2 for x64-based Systems (KB5031419) 2023-10 Security and Quality Rollup for .NET Framework 4.8 for Windows Server 2012 R2 for x64 (KB5031003)
Дальше просто. Берем сначал укропу Ставите апдейт для Updates (ESU) Licensing Preparation. Ставите 4 новых сертификата по статье выше. Прописываете отдельно продаваемый ESU key из личного кабинета Microsoft Volume Licensing Service Center (VLSC), немного магии, охапка дров и патч готов. Если у вас есть деньги и VLSC, конечно. Если нет, то вам сюда или сюда.
Приветствую, коллеги! Меня зовут @ProstoKirReal. Мне бы хотелось с вами обсудить как работает интернет от кабелей на витой паре, соединяющие простые локальные сети до подводных коммуникационных кабелей соединяющие между собой континенты и основные операторские сети.
Поскольку в одной статье невозможно охватить всю тему целиком, я разделю подготовленный материал на несколько частей. Сегодня мы начнем с базовых понятий.
Важно понимать, что разобраться во всех аспектах этой темы сложно, так как существуют узкие специализации и знания, недоступные обычному сетевому инженеру. Я не буду углубляться в историю интернета или рассказывать о классах IP-адресов и других устаревших концепциях. Вместо этого я сосредоточусь на том, как работает интернет в настоящее время.
В этом цикле статей я не стану учить вас настраивать оборудование и проектировать сети. Я расскажу об основных (и не только) принципах построения сети, а также о функционировании сети и сетевых протоколов в стеке TCP/IP.
Я буду часто ссылаться к предыдущим статьям, где уже описывал сетевые протоколы. Это позволит мне сократить объемный текст.
❯ Зачем нужна эта статья?
Данная статья нужна нам для того, чтобы разобраться в базовых знаниях и разобрать:
- что такое коммутатор, маршрутизатор, их основные различия и зачем они нужны; - примеры работы простых сетей, с помощью сетевых концентраторов (хабов) и коммутаторов.
❯ Что такое коммутатор, маршрутизатор?
Когда мы задаем вопрос в поисковике: «Чем отличается коммутатор от маршрутизатора?», то один из самых распространенных ответов, который можно найти в интернете (например, на Mail.ru), звучит так:
в функционале. маршрутизатор - маршрутизирует, коммутатор - коммутирует. все просто:)))
Это, пожалуй, самый краткий и ёмкий ответ на данный вопрос.
Однако если подойти к вопросу серьезно, необходимо разобраться в понятиях коммутации и маршрутизации.
Коммутация — это процесс перенаправления данных (кадров) в пределах одной сети, основанный на анализе адреса назначения. Она работает на канальном уровне модели OSI (L2), используя MAC-адреса устройств.
Маршрутизация — это процесс определения пути для передачи данных между разными сетями. Работает на сетевом уровне модели OSI (L3), используя IP-адреса.
Коммутаторы (switch) и маршрутизаторы (router) — это два ключевых устройства в сетевых инфраструктурах, которые выполняют разные, хотя и пересекающиеся, задачи. Разберемся в их функциях, особенностях и причинах появления, а также рассмотрим современные реалии, в которых их функциональность все больше пересекается.
Зачем появились маршрутизаторы
Исторически маршрутизаторы появились для соединения сетей с разными технологиями передачи данных. В начале эры сетей существовало множество локальных сетей (LAN) с различными стандартами: Ethernet, Token Ring, модемные пулы и другие. Эти сети были физически и логически разобщены, поскольку каждая из них использовала свои протоколы адресации и методы передачи данных.
Для решения этой проблемы была введена абстракция в виде IP-адреса — универсального протокола, не привязанного к физическому носителю. Маршрутизаторы стали устройствами, способными связывать сети с разными технологиями передачи данных, обеспечивая маршрутизацию на основе IP-адресов.
Основные функции
Коммутаторы:
работают преимущественно на уровне 2 модели OSI (канальный уровень);
создают таблицы MAC-адресов, которые определяют, через какой физический порт отправлять трафик;
обеспечивают коммуникацию внутри одной локальной сети (LAN).
Маршрутизаторы:
работают на уровне 3 модели OSI (сетевой уровень);
используют таблицы маршрутизации для определения оптимального пути передачи данных;
обеспечивают связь между разными сетями, в том числе с разными технологиями (Ethernet, Frame Relay, ATM, DSL);
используют протоколы маршрутизации, такие как OSPF, BGP, IS-IS.
Совместная работа коммутаторов и маршрутизаторов
Коммутаторы обеспечивают быстрый обмен данными внутри сети.
Маршрутизаторы соединяют локальную сеть с другими сетями, например, с интернетом, обеспечивая связь с серверами.
❯ Современные тенденции
Раньше этих различий хватало для определения работы коммутатора и маршрутизатора, но в современных устройствах все эти функции часто объединяются в L3-коммутаторах, которые совмещают преимущества обоих типов устройств. На данный момент различия между ними размыто, так как коммутаторы L3 и L3+ (Multiplayer switch) могут выполнять часть функционала маршрутизатора и маршрутизатор может иметь дополнительные физические порты для подключения локальных сетей.
❯ Рассмотрим различия между устройствами
L2-коммутаторы (канальный уровень)
❯ Особенности
Рабочий уровень: работают на 2 уровне модели OSI (канальный уровень).
Функциональность: обеспечивают передачу данных внутри одной локальной сети (LAN), используя таблицу MAC-адресов для маршрутизации кадров Ethernet.
Ограничения: не способны маршрутизировать трафик между разными VLAN или подсетями.
поддерживают IP-адресацию и статическую маршрутизацию.
❯ Плюсы
Универсальность.
Встроенная поддержка маршрутизации.
❯ Минусы
Ограниченные возможности динамической маршрутизации (по сравнению с маршрутизаторами). Обычно используется «межвлановая» маршрутизация, когда ip-адрес назначается на VLAN, а не на саб-интерфейс.
Более сложная настройка по сравнению с L2-коммутаторами.
L3+ коммутаторы (расширенные возможности сетевого уровня)
❯ Особенности
Рабочий уровень: также работают на 3 уровне, но с функциями, приближенными к маршрутизаторам.
Функциональность:
полноценная поддержка динамических протоколов маршрутизации (OSPF, BGP, EIGRP);
расширенные функции управления трафиком: ACL, QoS, NAT;
некоторые модели поддерживают MPLS для оптимизации передачи данных.
❯ Плюсы
Возможности динамической маршрутизации.
Более высокий уровень управления сетью.
❯ Минусы
Стоимость.
Сложность настройки.
Маршрутизаторы (Router)
❯ Особенности
Рабочий уровень: работают на 3 уровне модели OSI и выше.
поддержка VPN, NAT и часть функций межсетевого экранирования.
❯ Плюсы
Поддержка работы в глобальных сетях (WAN).
Высокий уровень безопасности.
❯ Минусы
Не предназначены для высокоскоростного L2-коммутирования.
Могут вызывать дополнительные задержки в локальных сетях.
❯ Сравнительная таблица
L2-коммутаторы идеально подходят для небольших сетей, где маршрутизация не требуется.
L3-коммутаторы — оптимальное решение для сетей с VLAN и умеренной сложностью.
L3+ коммутаторы находят применение в крупных и сложных инфраструктурах с необходимостью динамической маршрутизации.
Маршрутизаторы — необходимы для соединения локальных сетей с внешними сетями, но не заменяют коммутаторы внутри LAN.
Каждое устройство имеет свои уникальные сильные стороны и применяется в зависимости от масштабов и требований сети.
Хотя изначально коммутаторы и маршрутизаторы выполняли строго разные задачи, современное развитие сетевых технологий привело к значительному пересечению их функций.
Однако ключевые различия сохраняются: маршрутизаторы лучше подходят для связи между сетями с различными технологиями и для управления сложными топологиями, тогда как коммутаторы оптимизированы для высокой пропускной способности и коммутации в рамках одной сети. Выбор между этими устройствами зависит от конкретных задач и архитектуры сети.
❯ Что такое сеть?
Что же такое сеть? Если соединить два компьютера между собой, назначить им IP-адреса, будет ли это сетью? Ответ прост: да, это уже локальная сеть.
Сеть — это соединение двух и более компьютеров, устройств или других компонентов для обмена информацией.
Как только мы подключаем устройства к домашнему маршрутизатору, они становятся частью локальной сети. Маршрутизатор служит шлюзом по умолчанию для всех подключенных устройств и направляет пакеты данных для выхода в интернет.
Но пока не будем забегать вперед, начнем с самого простого — с двух соединенных между собой компьютеров.
❯ Рассмотрим самую простую сеть
Предположим, у нас есть два компьютера. Компьютер №1 имеет mac-адрес 00:00:00:00:00:0a, а компьютер №2 — 00:00:00:00:00:0b.
Мы назначаем компьютеру №1 IP-адрес 192.168.0.1, а компьютеру №2 — IP-адрес 192.168.0.2. Затем мы соединяем их сетевые карты «напрямую» с помощью витой пары.
Адресация компьютера №1 и №2
Чтобы проверить доступность соседнего компьютера, можно использовать утилиту «ping» и отправить запрос на него.
Однако есть проблема: компьютер №1 не сможет сразу отправить ICMP-запрос компьютеру №2, так как он не знает его mac-адрес. Это можно проверить, введя команду «arp -a» в командной строке (для Windows) и убедившись, что таблица ARP пуста.
Формирование ICMP-запроса невозможна
Как было сказано в предыдущей статье, ARP (Address Resolution Protocol) — это важнейший протокол в компьютерных сетях, который используется для определения MAC-адреса другого компьютера по известному IP-адресу.
Первым делом компьютер №1 отправит широковещательный запрос в сеть, чтобы узнать, кто такой 192.168.0.2.
IP-адресов не будет, так как ARP работает на уровне L2;
в теле пакета будет информация: кто такой 192.168.0.2, спрашивает 192.168.0.1.
ARP-запрос
Подробнее о заголовках L3 уровня (ARP, ICMP и др.) я рассказывал в этой статье.
После того как ARP-ответ будет получен компьютером №2, он сохранит в своей ARP-таблице информацию о IP и mac-адресе компьютера №1.
Теперь компьютеру необходимо отправить ARP-ответ.
Пакет будет выглядеть следующим образом:
src mac-адрес 00:00:00:00:00:0b;
dst mac-адрес 00:00:00:00:00:0a;
IP-адресов не будет, так как ARP работает на уровне L2;
в теле пакета будет информация: у IP-адреса 192.168.0.2 mac-адрес - 00:00:00:00:00:0b.
ARP-ответ
После того как ARP-ответ поступит к компьютеру №1, он сохранит в своей ARP-таблице информацию о IP и mac-адресе компьютера №2. Теперь для формирования ICMP-запроса известна вся информация, и от компьютера №1 будет сформирован следующий пакет:
src mac-адрес 00:00:00:00:00:0a;
dst mac-адрес 00:00:00:00:00:0b;
src IP-адрес 192.168.0.1;
dst IP-адрес 192.168.0.2
в теле пакета будет служебная информация для ICMP-протокола (подробнее в этой статье).
ICMP-запрос
После того как ICMP-запрос поступит на компьютер №2, тот отправит ICMP-ответ, так как уже знает mac-адрес соседнего устройства из своей ARP-таблицы.
Ответ будет выглядеть следующим образом:
src mac-адрес 00:00:00:00:00:0b;
dst mac-адрес 00:00:00:00:00:0a;
src-IP-адрес 192.168.0.2;
dst-IP-адрес 192.168.0.1;
в теле пакета будет служебная информация для ICMP-протокола.
После того как все эти пакеты прошли свой не долгий путь, в утилите «ping» появится первое сообщение о доступности соседнего устройства.
ICMP-ответ
❯ Три компьютера и сетевой концентратор (Hub)
❯ Что если нам нужно подключить больше компьютеров к одной сети?
Хаб передает данные, поступающие на один из его портов, на все остальные порты, что позволяет устройствам в локальной сети обмениваться информацией без сложной настройки. Однако такой подход имеет свои плюсы и минусы.
❯ Плюсы и минусы использования хаба
Хаб — это недорогое сетевое устройство, которое подходит для соединения небольших локальных сетей. Однако, если в сети используется большое количество устройств, возникают проблемы.
Эффективность: хаб работает на уровне L1 модели OSI, что означает, что он не различает адреса. Все пакеты передаются всем устройствам, кроме отправителя, независимо от их назначения.
Конфликт пакетов: поскольку данные передаются одновременно всем устройствам, в сети могут возникать коллизии. Чем больше устройств подключено, тем выше вероятность коллизий.
Пропускная способность: каждый порт хаба делит общую пропускную способность сети, что приводит к её снижению по мере увеличения числа подключений.
Современные сети используют коммутаторы (switch), которые работают на уровне L2, что позволяет им направлять пакеты только устройствам-адресатам.
❯ Пример работы хаба
Предположим, у нас есть хаб и три компьютера с IP-адресами:
компьютер №1: 192.168.0.1;
компьютер №2: 192.168.0.2;
компьютер №3: 192.168.0.3.
Все три компьютера подключены к хабу. Теперь, если мы с компьютера №1 отправим запрос «ping» на компьютер №2, то процесс будет происходить следующим образом.
Шаг 1. ARP-запрос
Компьютер №1 сначала отправит ARP-запрос в сеть, чтобы узнать MAC-адрес компьютера №2. Этот запрос будет выглядеть так:
IP-адреса в пакете отсутствуют, так как ARP работает на уровне L2.
ARP-запрос к компьютеру №2
Действия хаба
Хаб получит этот пакет через порт, к которому подключен компьютер №1, и передаст его на все остальные порты, кроме порта-отправителя. Таким образом, ARP-запрос поступит как на компьютер №2, так и на компьютер №3. Компьютеры №2 и №3 сохранят в ARP-таблице запись о компьютере №1, так как запрос был широковещательным. Однако ответит на него только компьютер №2, так как IP-адрес в запросе соответствует его собственному.
Сохранение mac-адреса в arp таблицу
Ответ от компьютера №2
Компьютер №2 отправит ARP-ответ, который пройдет через хаб и будет доставлен компьютеру №1. Компьютер №3 проигнорирует этот ответ, так как он не предназначен ему.
ARP-ответ будет выглядеть следующим образом:
src MAC-адрес: 00:00:00:00:00:0b;
dst MAC-адрес: 00:00:00:00:00:0a;
IP-адреса в пакете отсутствуют, так как ARP работает на уровне L2.
ARP-ответ компьютеру №1
Шаг 2. ICMP-запрос и ответ
После завершения ARP-обмена компьютер №1 сформирует ICMP-запрос и отправит его на компьютер №2. Запрос и последующий ответ будут переданы аналогичным образом через хаб, но пакеты также дойдут до всех устройств в сети, создавая дополнительную нагрузку.
ICMP-запрос/ответ
❯ Особенности работы ARP в сети с хабом
В такой схеме:
Компьютеры №1 и №2 знают о существовании друг друга;
Компьютер №3 знает о компьютере №1, так как получил его ARP-запрос, но не знает о компьютере №2.
Небольшое пояснение почему:
Компьютер №3 знает о Компьютере №1 из своей ARP-таблицы, но не знает о Компьютере №2 по следующим причинам:
Обработка ARP-запросов.
ARP-запросы обрабатываются операционной системой компьютера, а не сетевой платой. Однако, поскольку ARP-запрос имеет широковещательный MAC-адрес назначения (ff:ff:ff:ff:ff:ff), он достигает всех устройств в локальной сети и принимается сетевой платой;
Сохранение записи в ARP-таблице.
Хотя Компьютер №3 получает ARP-запрос, адресованный другому IP-адресу (например, Компьютеру №1), он не отвечает на него. Однако информация из тела пакета (IP-адрес и MAC-адрес Компьютера №1) может быть сохранена в ARP-таблице Компьютера №3 как часть пассивного процесса обучения;
Отбрасывание ARP-ответа.
ARP-ответ, отправленный Компьютером №1, также достигает Компьютера №3. Однако, поскольку MAC-адрес назначения в этом пакете не совпадает с MAC-адресом сетевой карты Компьютера №3, пакет отбрасывается сетевой платой на аппаратном уровне. В результате информация о Компьютере №2 не попадает в ARP-таблицу Компьютера №3.
Если мы попытаемся «пингануть» с компьютера №2 компьютер №3, произойдет ARP-обмен, как в примере выше. Однако если мы попытаемся с компьютера №3 «пингануть» компьютер №1, процесс будет следующим:
Компьютер №3, зная MAC-адрес компьютера №1 из своей ARP-таблицы, сразу отправит ICMP-запрос;
Компьютер №1, не имея записи о компьютере №3, отбросит запрос и отправит широковещательный ARP-запрос;
После получения ARP-ответа от компьютера №3 компьютер №1 сможет ответить на ICMP-запрос;
Компьютер №3 отправит новый ICMP-запрос, на который компьютер №1 успешно ответит.
Когда мы запускаем утилиту «ping», некоторые пакеты теряются. Это происходит из-за того, что требуется ARP-обмен данными между всеми промежуточными устройствами. Именно поэтому возникает необходимость в обмене данными с использованием протокола ARP между всеми устройствами, находящимися между источником и получателем данных.
Обмен между компьютером №3 и №1
❯ Три компьютера и L2 коммутатор
❯ Как обеспечить стабильность работы сети и исключить коллизии?
Ответ прост: использовать L2-коммутатор.
❯ Принцип работы L2-коммутатора
Коммутатор работает на канальном уровне модели OSI и использует MAC-адреса для пересылки данных. Рассмотрим на примере, как это происходит.
Устройства в сети:
компьютер №1: 192.168.0.1;
компьютер №2: 192.168.0.2;
компьютер №3: 192.168.0.3;
коммутатор №1: MAC-таблица изначально пуста.
Шаг 1. ARP-запрос
Когда компьютер №1 отправляет запрос «ping» на компьютер №2, он сначала формирует ARP-запрос для определения MAC-адреса получателя. Этот запрос поступает на коммутатор, который, не имея записей в MAC-таблице, рассылает его на все активные порты, кроме порта-отправителя.
Пустая MAC-таблица на коммутаторе
Действия коммутатора:
Коммутатор добавляет в свою MAC-таблицу запись о компьютере №1, связав его MAC-адрес с портом, через который пришел запрос;
ARP-запрос доставляется компьютерам №2 и №3.
Первая запись в MAC-таблицу
Ответы компьютеров:
Компьютер №2, распознав свой IP-адрес, отправляет ARP-ответ;
Компьютер №3 игнорирует запрос, но сохраняет запись о MAC-адресе компьютера №1 в своей ARP-таблице.
Коммутатор, получив ARP-ответ от компьютера №2, обновляет свою MAC-таблицу, добавляя запись о MAC-адресе компьютера №2.
Вторая запись в MAC-таблицу
Шаг 2. ICMP-запрос и ответ
После завершения ARP-обмена компьютер №1 отправляет ICMP-запрос компьютеру №2. Благодаря MAC-таблице, коммутатор направляет пакеты только в порт, подключенный к компьютеру №2, избегая лишней нагрузки на другие устройства.
ICMP-запрос/ответ через коммутатор
❯ Особенности работы ARP в сети с коммутатором
Компьютеры №1 и №2 знают о существовании друг друга;
Компьютер №3 знает MAC-адрес компьютера №1, но не знает о существовании компьютера №2;
В MAC-таблице коммутатора нет записи о компьютере №3.
Если компьютер №3 отправит запрос «ping» на компьютер №1, процесс будет следующий:
Компьютер №3 сразу формирует ICMP-запрос, используя MAC-адрес из своей ARP-таблицы;
Коммутатор передает пакет на порт компьютера №1;
компьютер №1, не имея записи о компьютере №3, отправляет ARP-запрос;
после завершения ARP-обмена компьютер №1 отвечает на ICMP-запрос.
Третья запись в MAC-таблице
❯ Что будет если во время работы коммутатор перезагрузится?
Если коммутатор перезагрузится или его MAC-таблица очистится, он начнет временно работать как хаб, передавая пакеты на все порты, пока MAC-таблица не будет заполнена.
Очистка MAC-таблицы
В этой ситуации происходит следующее:
Пакет, адресованный компьютеру №2, поступает на коммутатор. Поскольку MAC-таблица коммутатора пуста, чтобы обеспечить корректную работу сети, коммутатор передает эти пакеты на все порты, кроме того порта, через который они были получены. Затем в MAC-таблицу коммутатора добавляется первая запись о компьютере №1;
Первая запись в MAC-таблицу
Затем коммутатор получит пакет, предназначенный для компьютера №2. Поскольку в MAC-таблице нет записи об этом компьютере, чтобы обеспечить корректную работу сети, коммутатор передаст эти пакеты на все порты, кроме того порта, через который они были получены. После этого в MAC-таблицу коммутатора будет добавлена первая запись о компьютере №2;
Далее сеть будет работать так же, как и до перезагрузки или очистки MAC-таблицы.
Вторая запись в MAC-таблицу
Ключевое отличие коммутатора от концентратора (хаба) заключается в следующем: хаб, независимо от обстоятельств, всегда будет пересылать пакеты во все порты, кроме того, из которого этот пакет был получен. В свою очередь, коммутатор передает пакеты на все порты до тех пор, пока в его MAC-таблице не появятся записи. Как только в таблице появляются записи, коммутатор направляет пакеты в соответствующие порты.
❯ Три компьютера и несколько L2 коммутаторов
Рассмотрим, как работает сеть с несколькими коммутаторами.
Устройства в сети:
компьютер №1: 192.168.0.1;
компьютер №2: 192.168.0.2;
компьютер №3: 192.168.0.3;
коммутатор №1 и №2: MAC-таблица изначально пуста.
Все три компьютера подключены к нескольким коммутаторам. Если с компьютера №1 отправить запрос «ping» на компьютер №2, ARP-запрос попадет на коммутатор и будет направлен во все активные порты, поскольку это широковещательный запрос.
MAC-таблица пустая у обоих коммутаторов
Шаг 1. ARP-запрос
Когда компьютер №1 отправляет ARP-запрос компьютеру №2:
Коммутатор №1:
передает запрос на все порты, кроме порта-отправителя;
сохраняет в MAC-таблицу запись о компьютере №1.
Первая запись в MAC-таблицу коммутатора №1
Коммутатор №2:
получает запрос от коммутатора №1 и передает его на свои порты;
добавляет в MAC-таблицу запись о MAC-адресе компьютера №1.
Компьютеры №2 и №3 сохраняют запись о MAC-адресе компьютера №1.
Первая запись в MAC-таблицу коммутатора №2
Шаг 2. ICMP-запрос и ответ
Когда компьютеры начинают обмениваться ICMP-пакетами, каждый коммутатор использует свои MAC-таблицы для передачи пакетов только на целевые порты.
Вторая запись в MAC-таблицу коммутатора №1 и №2
Если с компьютера №3 отправить запрос «ping» на компьютер №2, произойдет ARP-обмен данными между устройствами. Коммутаторы сохранят необходимые записи в своих MAC-таблицах, и ICMP-пакеты будут передаваться в соответствии с этими таблицами.
Третья запись в MAC-таблицу коммутатора №1 и №2
❯ Особенности работы с несколькими коммутаторами
У каждого коммутатора своя уникальная MAC-таблица.
Коммутатор №2 может иметь одну запись для порта с несколькими устройствами, подключенными через другой коммутатор.
Каждый коммутатор формирует свою MAC-таблицу, основываясь на трафике, проходящем через его порты. Чем больше устройств подключено за одним портом, тем больше записей будет ассоциировано с этим портом. Однако даже в сложных сетях коммутаторы эффективно справляются с передачей пакетов, минимизируя нагрузку на сеть.
❯ Заключение
Подводя итоги, мы рассмотрели ключевые устройства и их функции в сетях, такие как коммутаторы и маршрутизаторы, их различия и области применения. Также мы разобрали базовые принципы работы сетей на примере нескольких подключенных устройств, ARP-запросов, ICMP-протокола и их взаимодействия.
Важно отметить, что в этой статье мы не рассматривали работу маршрутизаторов в более сложных сетевых топологиях. В следующей статье мы разберем, как работают маршрутизаторы, как сегментировать сеть, зачем это нужно и как это влияет на масштабируемость и управление.
Эти знания помогут глубже понять основы проектирования сетей и взаимодействия их компонентов.
Написано специально для Timeweb Cloudи читателей Пикабу. Больше интересных статей и новостей в нашемблоге на Хабре и телеграм-канале.
Хочешь стать автором (или уже состоявшийся автор) и есть, чем интересным поделиться в рамках наших блогов — пиши сюда.