что такое прямой ip адрес
Чем опасен внешний IP-адрес
Рассказываем, что за услуга такая — «внешний IP-адрес», зачем она нужна и чем вы рискуете, если ее подключите.
Практически у каждого интернет-провайдера есть такая услуга: фиксированный внешний IP-адрес. Его же иногда называют «реальным IP», «белым IP» или «прямым IP». Некоторые подключают ее по принципу «чтобы было», некоторые — с вполне осознанной целью. Однако внешний IP-адрес может таить множество опасностей. Что это за услуга, кому она может понадобиться и чем вы рискуете, подключив ее, — расскажем прямо сейчас.
Что такое IP-адрес и как это все работает
Если вы хотите отправить другу открытку из путешествия, вам нужно знать его адрес. Без этого почтовая система никак не сможет узнать, где искать вашего друга. Интернет работает примерно так же: все действия в Интернете, от проверки почты до просмотра смешных видеороликов, требуют обмена данными между вашим устройством и серверами, и у каждого участника должен быть свой адрес, по которому его можно идентифицировать.
Например, чтобы открыть страницу в браузере, компьютер должен обратиться к серверу по его адресу, а тот, в свою очередь, отправит эту страницу обратно — тоже по адресу. Передача и запросов, и ответов происходит при помощи пакетов, которые, как и обычные бумажные письма, содержат адреса отправителя и получателя. Такие адреса называются IP-адресами и записываются в виде четырех чисел от 0 до 255, разделенных точками: например 92.162.36.203. Всего возможных комбинаций немногим более 4 миллиардов, а это гораздо меньше, чем устройств, подключенных к Интернету.
Поэтому IP-адреса решили экономить и придумали механизм NAT (Network address translation) — «трансляцию сетевых адресов». Работает этот механизм следующим образом: интернет-провайдер использует один внешний IP-адрес для всех своих абонентов, а самим им присваивает внутренние.
Это похоже на офисную АТС: когда вам звонят из какой-нибудь фирмы, то всегда определяется один и тот же номер, а телефоны разных сотрудников имеют дополнительные, внутренние номера. Дозвониться до конкретного человека напрямую нельзя, но можно набрать общий номер — и секретарь соединит вас с нужным абонентом.
В роли такого «секретаря» и выступает NAT: получив пакет для внешнего сервера, он запоминает, какое устройство его отправило (чтобы знать, куда передавать ответ), и подставляет вместо его адреса-номера свой, общий для всех, после чего пересылает пакет дальше. Соответственно, при получении ответного пакета, который изначально был отправлен на общий адрес, NAT подставляет в него адрес во внутренней сети провайдера, и «письмо» летит дальше, к тому устройству, которому оно в действительности адресовано.
Механизм NAT может работать по цепочке — например, ваш домашний Wi-Fi-роутер создает локальную сеть со своими IP-адресами и переадресует пакеты, направляемые в сеть провайдера и из нее. При этом он может даже не знать, что сам находится за NAT провайдера. Казалось бы, все прекрасно, зачем тогда внешний IP-адрес?
Дело в том, что с NAT все отлично работает до тех пор, пока все соединения инициируются именно из внутренней сети. То есть если это вы открываете сайты, скачиваете файлы и смотрите видео. Но если к вашему устройству нужно подключиться из Интернета, то через NAT это реализовать невозможно: все пакеты, которые поступят на IP-адрес провайдера, уйдут в никуда, потому что они не являются ответом на чей-то внутренний запрос, и кому их слать дальше — непонятно.
Поэтому для тех случаев, когда к своей сети нужен доступ извне, используют внешний IP-адрес — уникальный и неповторимый. Это примерно как телефону директора в офисе присвоить отдельный прямой городской номер, чтобы те, кто его знает, могли позвонить сразу ему, минуя секретаря.
Зачем нужен внешний IP
Дома это может пригодиться, например, если вы хотите получать доступ к файлам на домашнем компьютере с работы или, скажем, из гостей, вместо того чтобы держать их в облачных хранилищах.
Очень популярны внешние IP-адреса у геймеров: можно создать собственный сервер для многопользовательской игры со своими правилами, модами, картами и приглашать друзей играть. А еще внешний IP-адрес нужен для стриминга игр с удаленных устройств типа Xbox, Playstation или вашего игрового компьютера на ноутбук, когда вы, допустим, решили поиграть в гостях или в поездке.
Иногда внешний IP-адрес требуется для работы сервисов видеонаблюдения и прочих охранных систем, решений для «умного дома» и так далее, однако преимущественно старых. Большинство современных систем — облачные. Это значит, что вы регистрируете свои домашние устройства на специальном доверенном сервере.
После этого все команды устройствам вы отправляете не напрямую им, а на этот сервер. В свою очередь, устройства периодически обращаются к нему и спрашивают, не поступило ли для них команд. При таком подходе реальный IP не требуется — на всех этапах система NAT понимает, куда возвращать пакеты. Заодно через этот же сервер вы можете получать информацию с устройств и управлять ими из любой точки мира.
Чем опасен внешний IP
Главная опасность внешнего IP-адреса заключается в том же, в чем и его преимущество: он позволяет подключиться к вашему устройству напрямую из Интернета. Из любой точки мира, кому угодно — то есть и злоумышленникам тоже. Затем, используя те или иные уязвимости, киберпреступники вполне могут добраться до ваших файлов и украсть какую-нибудь конфиденциальную информацию, которую потом можно или продать, или вас же ею и шантажировать.
Кроме того, злоумышленник может изменить настройки вашего доступа в Интернет, например, заставить роутер вместо некоторых сайтов подсовывать вам их фишинговые копии — тогда у вас очень быстро украдут все логины и пароли.
Как хакеры узнают, на кого нападать? Во-первых, есть общедоступные интернет-сервисы, которые регулярно проверяют все IP-адреса подряд на предмет уязвимостей и позволяют буквально в пару кликов найти тысячи устройств, имеющих ту или иную дырку, через которую их можно взломать. Во-вторых, при желании злоумышленники могут узнать именно ваш IP — например, через запущенный Skype. Еще ваш адрес видно, когда вы просто заходите на страницы сайтов.
Кстати, по реальному IP-адресу можно не только взломать вашу домашнюю сеть, но и устроить на вас DDoS-атаку, отправляя вам одновременно множество пакетов с разных устройств и перегружая интернет-канал и роутер. У вашего интернет-провайдера от этого есть защита, а у вас? Такие атаки часто проводят против геймеров и стримеров — например, чтобы «выкинуть» сильного противника из соревнования, «подвесив» ему Интернет.
Как защититься
Лучший способ защиты — это, конечно, вообще не использовать внешний IP-адрес, особенно если вы не уверены, что он вам необходим. Не ведитесь на рекламу интернет-провайдеров, как бы убедительна она ни была.
Если же уверены, что прямой IP вам нужен, то первым делом поменяйте используемый по умолчанию пароль от роутера. Это не защитит вас от хакеров, эксплуатирующих уязвимости конкретной модели устройства, но спасет от менее квалифицированных злоумышленников. Хорошей идеей будет использовать роутер той модели, в которой меньше известных и популярных среди хакеров дырок — правда, чтобы это понять, придется как следует порыться в Интернете.
Прошивку роутера желательно регулярно обновлять — в более свежих версиях прошивок, как правило, устраняют ошибки, которые были найдены в ранних версиях. И, конечно, в роутере нужно включить все имеющиеся встроенные средства защиты — в домашних моделях это не самые эффективные решения, но хоть что-то.
Кроме того, желательно использовать VPN — например, Kaspersky Secure Connection. Тогда ваш внешний IP-адрес, по крайней мере, не будет виден везде, где вы бываете в Интернете: вместо него будет отображаться адрес VPN-сервера.
Наконец, не пренебрегайте защитными решениями как на компьютерах, так и на мобильных устройствах. Сегодня они не просто ловят зловредов, но и позволяют защититься от другого рода атак вроде перенаправления на зловредные сайты или добавления вредоносной рекламы — а именно такие атаки наиболее вероятны при взломе роутера.
Сети для начинающего IT-специалиста. Обязательная база
Примерно 80% из нас, кто заканчивает университет с какой-либо IT-специальностью, в итоге не становится программистом. Многие устраиваются в техническую поддержку, системными администраторами, мастерами по наладке компьютерных устройств, консультантами-продавцами цифровой техники, менеджерами в it-сферу и так далее.
Эта статья как раз для таких 80%, кто только закончил университет с какой-либо IT-специальностью и уже начал мониторить вакансии, например, на должность системного администратора или его помощника, либо выездного инженера в аутсорсинговую фирму, либо в техническую поддержку 1-й/2-й линии.
А также для самостоятельного изучения или для обучения новых сотрудников.
За время своей трудовой деятельности в сфере IT я столкнулся с такой проблемой, что в университетах не дают самую основную базу касательно сетей. С этим я столкнулся сначала сам, когда, после окончания университета, ходил по собеседованиям в 2016 году и не мог ответить на простые (как мне сейчас кажется) вопросы. Тогда мне конечно показалось, что это я прохалтурил и не доучил в университете. Но как оказалось дело в образовательной программе. Так как сейчас, я также сталкиваюсь с данным пробелом знаний, когда обучаю новых сотрудников.
И что тогда, мне пришлось изучить множество статей в интернете, прежде чем я понял базовые моменты, и что сейчас, задавая молодым специалистам темы для изучения, они с трудом находят и усваивают необходимое. Это происходит по причине того, что в Интернете огромное количество статей и все они разрозненны по темам, либо написаны слишком сложным языком. Плюс большинство информации в начале своих статей содержат в основном просто научные определения, а дальше сразу сложные технологии использования. В итоге получается много того, что для начинающего пока совсем непонятно.
Именно поэтому я решил собрать основные темы в одну статью и объяснить их как можно проще «на пальцах».
Сразу предупреждаю, что никакой углубленной информации в статье не будет, только исключительно самая база и самое основное.
Темы, которые рассмотрены:
1. Глобальные и Локальные сети
Вся интернет сеть подразделяется на глобальную (WAN) и локальную (LAN).
Все пользовательские устройства в рамках одной квартиры или офиса или даже здания (компьютеры, смартфоны, принтеры/МФУ, телевизоры и т.д.) подключаются к роутеру, который объединяет их в локальную сеть.
Участники одной локальной сети могут обмениваться данными между своими устройствами без подключения к интернет провайдеру. А вот чтобы выйти в сеть (например, выйти в поисковик Яндекс или Google, зайти в VK, Instagram, YouTube или AmoCRM) необходим доступ к глобальной сети.
Выход в глобальную сеть обеспечивает интернет провайдер, за что мы и платим ему абонентскую плату. Провайдер устанавливает на своих роутерах уровень скорости для каждого подключения в соответствии с тарифом. Провайдер прокидывает нам витую пару или оптику до нашего роутера (нашей локальной сети) и после этого любое устройства нашей локальной сети может выходить в глобальную сеть.
Для аналогии, сети, можно сравнить с дорогами.
Например, дороги вашего города N это локальная сеть. Эти дороги соединяют вас с магазинами, учреждениями, парками и другими местами вашего города.
Чтобы попасть в другой город N вам необходимо выехать на федеральную трассу и проехать некоторое количество километров. То есть выйти в глобальную сеть.
Для более наглядного представления, что такое глобальная и локальная сеть я нарисовал схематичный рисунок.
2. Белые и серые IP-адреса
Каждое устройство в сети имеет свой уникальный IP-адрес. Он нужен для того, чтобы устройства сети понимали куда необходимо направить запрос и ответ.
Это также как и наши дома и квартиры имеют свой точный адрес (индекс, город, улица, № дома, № квартиры).
В рамках вашей локальной сети (квартиры, офиса или здания) есть свой диапазон уникальных адресов. Я думаю многие замечали, что ip-адрес компьютера, например, начинается с цифр 192.168.X.X
Так вот это локальный адрес вашего устройства.
Существуют разрешенные диапазоны локальных сетей:
Думаю из представленной таблицы сразу становится понятно почему самый распространенный диапазон это 192.168.X.X
Чтобы узнать, например, ip-адрес своего компьютера (на базе ос windows), наберите в терминале команду ipconfig
Как видите, ip-адрес моего компьютера в моей домашней локальной сети 192.168.88.251
Для выхода в глобальные сети, ваш локальный ip-адрес подменяется роутером на глобальный, который вам выдал провайдер. Глобальные ip-адреса не попадают под диапазоны из таблички выше.
Так вот локальные ip-адреса — это серые ip-адреса, а глобальные — это белые.
Для большего понимания рассмотрите схему ниже. На ней я подписал каждое устройство своим ip-адресом.
На схеме видно, что провайдер выпускает нас в глобальные сети (в интернет) с белого ip-адреса 91.132.25.108
Для нашего роутера провайдер выдал серый ip-адрес 172.17.135.11
И в нашей локальной сети все устройства соответственно тоже имеют серые ip-адреса 192.168.Х.Х
Узнать под каким ip-адресом вы выходите в глобальную сеть можно на сайте 2ip.ru
Но из всего этого стоит помнить один очень важный фактор!
В настоящее время обострилась проблема нехватки белых ip-адресов, так как число сетевых устройств давно превысило количество доступных ip. И по этой причине интернет провайдеры выдают пользователям серые ip-адреса (в рамках локальной сети провайдера, например в пределах нескольких многоквартирных домов) и выпускают в глобальную сеть под одним общим белым ip-адресом.
Чтобы узнать серый ip-адрес выдает вам провайдер или белый, можно зайти к себе на роутер и посмотреть там, какой ip-адрес получает ваш роутер от провайдера.
Например я на своем домашнем роутере вижу серый ip-адрес 172.17.132.2 (см. диапазаон локальных адресов). Для подключения белого ip-адреса провайдеры обычно предоставляют доп. услугу с абон. платой.
На самом деле, для домашнего интернета это совсем не критично. А вот для офисов компаний рекомендуется покупать у провайдера именно белый ip-адрес, так как использование серого ip-адреса влечет за собой проблемы с работой ip-телефонии, а также не будет возможности настроить удаленное подключение по VPN. То есть серый ip-адрес не позволит вам вывести в интернет ваш настроенный сервер и не позволит настроить удаленное подключение на сервер из другой сети.
3. NAT
В предыдущем разделе я отметил, что “в настоящее время обострилась проблема нехватки белых ip-адресов” и поэтому распространенная схема подключения у интернет провайдеров сейчас, это подключать множество клиентов серыми ip-адресами, а в глобальный интернет выпускать их под одним общим белым ip.
Но так было не всегда, изначально всем выдавались белые ip-адреса, и вскоре, чтобы избежать проблему дефицита белых ip-адресов, как раз и был придуман NAT (Network Address Translation) — механизм преобразования ip-адресов.
NAT работает на всех роутерах и позволяет нам из локальной сети выходить в глобальную.
Для лучшего понимания разберем два примера:
1. Первый случай: у вас куплен белый ip-адрес 91.105.8.10 и в локальной сети подключено несколько устройств.
Каждое локальное устройство имеет свой серый ip-адрес. Но выход в интернет возможен только с белого ip-адреса.
Следовательно когда, например, ПК1 с ip-адресом 192.168.1.3 решил зайти в поисковик Яндекса, то роутер, выпуская запрос ПК1 в глобальную сеть, подключает механизм NAT, который преобразует ip-адрес ПК1 в белый глобальный ip-адрес 91.105.8.10
Также и в обратную сторону, когда роутер получит от сервера Яндекса ответ, он с помощью механизма NAT направит этот ответ на ip-адрес 192.168.1.3, по которому подключен ПК1.
2. Второй случай: у вас также в локальной сети подключено несколько устройств, но вы не покупали белый ip-адрес у интернет провайдера.
В этом случае локальный адрес ПК1(192.168.1.3) сначала преобразуется NAT‘ом вашего роутера и превращается в серый ip-адрес 172.17.115.3, который вам выдал интернет-провайдер, а далее ваш серый ip-адрес преобразуется NAT’ом роутера провайдера в белый ip-адрес 91.105.108.10, и только после этого осуществляется выход в интернет (глобальную сеть).
То есть, в этом случае получается, что ваши устройства находятся за двойным NAT’ом.
Такая схема имеет более высокую степень безопасности ваших устройств, но также и имеет ряд больших минусов. Например, нестабильная sip-регистрация VoIP оборудования или односторонняя слышимость при звонках по ip-телефонии.
Более подробно о работе механизма NAT, о его плюсах и минусах, о выделении портов, о сокетах и о видах NAT я напишу отдельную статью.
4. DHCP — сервер и подсети
Чтобы подключить устройство, например, компьютер к интернету вы обычно просто подключаете провод (витую пару) в компьютер и далее в свободный порт на роутере, после чего компьютер автоматически получает ip-адрес и появляется выход в интернет.
Также и с Wi-Fi, например со смартфона или ноутбука, вы подключаетесь к нужной вам сети, вводите пароль, устройство получает ip-адрес и у вас появляется интернет.
А что позволяет устройству получить локальный ip-адрес автоматически?
Эту функцию выполняет DHCP-сервер.
Каждый роутер оснащен DHCP-сервером. IP-адреса, полученные автоматически являются динамическими ip-адресами.
Потому что, при каждом новом подключении или перезагрузки роутера, DHCP-сервер тоже перезагружается и может выдать устройствам разные ip-адреса.
То есть, например, сейчас у вашего компьютера ip-адрес 192.168.1.10, после перезагрузки роутера ip-адрес компьютера может стать 192.168.1.35
Чтобы ip-адрес не менялся, его можно задать статически. Это можно сделать, как на компьютере в настройках сети, так и на самом роутере.
А также, DHCP-сервер на роутере вообще можно отключить и задавать ip-адреса вручную.
Можно настроить несколько DHCP-серверов на одном роутере. Тогда локальная сеть разделится на подсети.
Например, компьютеры подключим к нулевой подсети в диапазон 192.168.0.2-192.168.0.255, принтеры к первой подсети в диапазон 192.168.1.2-192.168.1.255, а Wi-Fi будем раздавать на пятую подсеть с диапазоном 192.168.5.2-192.168.5.255 (см. схему ниже)
Обычно, разграничение по подсетям производить нет необходимости. Это делают, когда в компании большое количество устройств, подключаемых к сети и при настройке сетевой безопасности.
Но такая схема в компаниях встречается довольно часто.
Поэтому обязательно нужно знать очень важный момент.
Внимание!
Если вам необходимо с ПК зайти на web-интерфейс, например, принтера или ip-телефона и при этом ваш ПК находится в другой подсети, то подключиться не получится.
Для понимания разберем пример:
Допустим вы работаете за ПК1 с локальным ip-адресом 10.10.5.2 и хотите зайти на web-интерфейс ip-телефона с локальным ip-адресом 192.168.1.3, то подключиться не получится. Так как устройства находятся в разных подсетях. К ip-телефона, находящиеся в подсети 192.168.1.X, можно подключиться только с ПК3 (192.168.1.5).
Также и к МФУ (172.17.17.10) вы сможете подключиться только с ПК4 (172.17.17.12).
Поэтому, когда подключаетесь удаленно к пользователю на ПК, чтобы зайти на web-интерфейс ip-телефона, то обязательно сначала сверяйте их локальные ip-адреса, чтобы убедиться, что оба устройства подключены к одной подсети.
5. Устройства маршрутизации сети (маршрутизатор, коммутатор, свитч, хаб)
Как ни странно, но есть такой факт, что новички в IT (иногда и уже действующие сис.админы) не знают или путают такие понятия как маршрутизатор, коммутатор, свитч, сетевой шлюз и хаб.
Я думаю, причина такой путаницы возникла из-за того, что наплодили синонимов и жаргонизмов в названиях сетевого оборудования и это теперь вводит в заблуждение многих начинающих инженеров.
а) Роутер, маршрутизатор и сетевой шлюз
Все знают что такое роутер. Что это именно то устройство, которое раздает в помещении интернет, подключенный от интернет провайдера.
Так вот маршрутизатор и сетевой шлюз это и есть роутер.
Данное оборудование является основным устройством в организации сети. В инженерной среде наиболее используемое название это “маршрутизатор”.
Кстати маршрутизатором может быть не только приставка, но и системный блок компьютера, если установить туда еще одну сетевую карту и накатить, например, RouterOS Mikrotik. Далее разрулить сеть на множество устройств с помощью свитча.
б) Что такое Свитч и чем он отличается от Коммутатора и Хаба
Свитч и Коммутатор это тоже синонимы. А вот хаб немного другое устройство. О нем в следующем пункте (в).
Коммутатор (свитч) служит для разветвления локальной сети. Как тройник или сетевой фильтр, куда мы подключаем свои устройства, чтобы запитать их электричеством от одной розетки.
Коммутатор не умеет маршрутизировать сеть как роутер. Он не выдаст вашему устройству ip-адрес и без помощи роутера не сможет выпустить вас в интернет.
У стандартного маршрутизатора обычно 4-5 портов для подключения устройств. Соответственно, если ваши устройства подключаются проводами и их больше чем портов на роутере, то вам необходим свитч. Можно к одному порту роутера подключить свитч на 24 порта и спокойно организовать локальную сеть на 24 устройства.
А если у вас завалялся еще один роутер, то можно в его web-интерфейсе включить режим коммутатора и тоже использовать как свитч.
в) Хаб
Хаб выполняет те же функции, что и коммутатор. Но его технология распределения сильно деревянная и уже устарела.
Хаб раздает приходящие от роутера пакеты всем подключенным устройствам без разбора, а устройства уже сами должны разбираться их это пакет или нет.
А коммутатор имеет MAC таблицу и поэтому распределяет приходящие пакеты на одно конкретное устройство, которое и запрашивало этот пакет. Следовательно передача данных коммутатором быстрее и эффективнее.
В настоящее время уже редко где встретишь использование хаба, но всё таки они попадаются, нужно быть к этому готовым и обязательно рекомендовать пользователю замену хаба на свитч.
6. Основные команды для анализа сети
а) Команда Ping
Чтобы понять активен ли ip-адрес или само устройство, можно его “пропинговать”.
Для этого в командной строке пишем команду ping “ip-адрес”.
Здесь мы “пинганули” dns сервер google и, как видим, сервер активен (отклик на пинги есть и равен 83 мс).
Если адресат недоступен или данный ip-адрес не существует, то мы увидим такую картину:
То есть ответа на пинги не получаем.
Соответственно ключ “-а” нам показал, что имя пингуемого узла “dns.google”.
А благодаря ключу “-t” ping шел без остановки, я остановил его, нажав Ctrl+C.
При непрерывном пинге можно увидеть адекватно ли ведет себя пингуемый узел и примерное качество работы интернет канала.
Как видим из скриншота, периодически возникают задержки приема пакета аж до 418 мс, это довольно критичное значение, так как скачок с 83 мс до 418 мс отразился бы на видеосвязи торможением/зависанием изображения или в ip-телефонии деградацией качества голоса.
В моем случае, скорей всего штормит мой домашний Интернет.
Но чтобы более детально установить причину, это нужно запускать dump. А это тема для целой статьи.
Внимание! Иногда на роутерах отключена отправка ICMP пакетов (кто-то отключает специально, а где-то не включена по умолчанию), в таком случае на «пинги» такой узел отвечать не будет, хотя сам будет активен и нормально функционировать в сети.
Еще одна возможность “пинга” это узнать какой ip-адрес скрывается за доменом сайта. А именно, на каком сервере установлен хост сайта.
Для этого просто вместо ip-адреса пишем сайт:
Как видите, у хабра ip-адрес 178.248.237.68
б) Трассировка
Иногда очень важно увидеть каким путем идет пакет до определенного устройства.
Возможно где-то есть пробоина и пакет не доходит до адресата. Так вот утилита трассировки помогает определить на каком этапе этот пакет застревает.
На ОС Windows эта утилита вызывается командой “tracert” ip-адрес или домен:
Здесь мы увидели через какие узлы проходит наш запрос, прежде чем дойдет до сервера ya.ru
На ОС Linux эта утилита вызывается командой traceroute.
Утилитой трассировки также и обладают некоторые устройства, маршрутизаторы или голосовые VoIP шлюзы.
в) Утилита whois
Данная утилита позволяет узнать всю информацию об ip-адресе или о регистраторе домена.
Например, проверим ip-адрес 145.255.1.71. Для этого ввожу в терминале команду whois 145.255.1.71
Получили информацию о провайдере ip-адреса, страну, город, адрес, диапазон и т.д.
Я пользуюсь ей только на Linux. Утилита качается и устанавливается легко из стандартного репозитория операционной системы.
Но также читал, что и на Windows есть подобное решение.
7. Транспортные протоколы TCP и UDP
Все передачи запросов и прием ответов между устройствами в сети осуществляются с помощью транспортных протоколов TCP и UDP.
TCP протокол гарантированно осуществляет доставку запроса и целостность его передачи. Он заранее проверяет доступность узла перед отправкой пакета. А если по пути целостность пакета будет нарушена, то TCP дополнит недостающие составляющие.
В общем, это протокол, который сделает все, чтобы ваш запрос корректно дошел до адресата.
Поэтому TCP самый распространенный транспортный протокол. Он используется когда пользователь серфит интернет, лазает по сайтам, сервисам, соц. сетям и т.д.
UDP протокол не имеет такой гарантированной передачи данных, как TCP. Он не проверяет доступность конечного узла перед отправкой и не восполняет пакет в случае его деградации. Если какой-то пакет или несколько пакетов по пути утеряны, то сообщение дойдет до адресата в таком неполном виде.
Зачем тогда нужен UDP?
Дело в том, что данный транспортный протокол имеет огромное преимущество перед TCP в скорости передачи данных. Поэтому UDP широко используется для пересылки голосовых и видео пакетов в реальном времени. А именно, в ip-телефонии и видео звонках.
К примеру, любой звонок через WhatsApp или Viber использует транспортный протокол UDP. Также и при видео звонках, например, через Skype или те же мессенджеры WhatsApp и Viber.
Именно потому что UDP не гарантирует абсолютную передачу данных и целостность передаваемого пакета, зачастую возникают проблемы при звонках через интернет.
Это прерывание голоса, запаздывание, эхо или робоголос.
Данная проблема возникает из-за нагруженного интернет канала, двойного NATа или радиоканала.
Хорошо бы конечно в таких случаях использовать TCP, но увы, для передачи голоса необходима мгновенная передача целостных пакетов, а для этой задачи идеально подходит UDP.
Чтобы не возникало проблем с использованием UDP протокола, нужно просто организовать качественный интернет канал. А также настроить на роутере выделенную полосу для UDP, чтобы нагрузка с других устройств, которые используют TCP не мешала работе транспортного протокола UDP.
На этом всё.
Я не стал нагромождать статью и копипастить сюда научные определения всех используемых терминов, кому это необходимо, просто загуглите.
Я постарался собрать воедино 7 самых важных, на мой взгляд, моментов, знание которых, помогут юному “айтишнику” пройти первые этапы собеседования на “айтишные” должности или хотя бы просто дать понять работодателю, что вы явно знаете больше, чем рядовой юзер.
Изучайте, конспектируйте. Надеюсь, что статья многим принесет пользу.