В компьютерных сетях , в частности в Internet Relay Chat (IRC), netsplit - это разрыв соединения между двумя серверами. Разделение между любыми двумя серверами разделяет всю сеть на две части. [1]
Причина и следствия
Рассмотрим график справа, который представляет компьютерную сеть . Каждая строка представляет установленное соединение. Таким образом, сервер С подключен непосредственно к A , который также подключен к B и D .
Если происходит нарушение соединения между C и A , в результате соединение может быть прервано. Это может произойти либо из-за того, что сокет выдает ошибку, либо из-за чрезмерной задержки, при которой удаленный сервер A ожидает этого случая (что называется тайм-аутом).
Когда соединение между A и C разрывается, пользователи, которые были подключены к другим серверам, которые больше не доступны в сети, похоже, завершают работу. Например, если пользователь Сара подключен к серверу A , пользователь Боб подключен к серверу B , а пользователь Джо подключен к C , а C отделяется или отключается от A , для Джо будет казаться, что Сара и Боб оба вышли. (отключен от сети), и Сара и Боб увидят, что Джо ушел. Однако Джо по- прежнему может разговаривать с любым, кто подключен к тому же серверу (в данном случае к серверу C ). Это происходит потому, что серверы, к которым они подключены, информируются об изменении статуса сети и соответственно обновляют свою локальную информацию, чтобы отобразить это изменение.
Позже сервер C может повторно подключиться (повторно подключиться) к серверу (или серверам) в сети, и пользователи, которые, казалось, вышли, снова присоединятся; процесс отправки этой обновленной информации на все серверы в сети называется netburst (или синхронизацией ).
Проблемы с безопасностью
Иногда пользователи будут пытаться использовать netsplits, чтобы получить доступ к частным каналам. Если бы ни один из пользователей канала не находился на сервере C, пользователь мог бы присоединиться к частному каналу и позже получить доступ, когда серверы повторно соединятся. Это обычно известно как сплит-езда или сплит .
Другая типичная IRC-атака, ориентированная на netsplit, - это конфликт имен. В этой атаке пользователь в разделенном сегменте сети изменит псевдонимы на псевдоним пользователя на другой стороне разделенной сети. При повторном подключении сеть отключит обоих пользователей, потому что одновременно может использоваться только один ник. Современное программное обеспечение серверов IRC в значительной степени устранило этот метод, но серверы, использующие более старое программное обеспечение, все еще могут быть уязвимы.
Появление
Ниже приведены примеры типичного нетсплита. Когда два сервера разделяются, пользователь видит в этом уход большого количества пользователей. После повторного подключения серверов пользователь видит, что другие пользователи снова присоединяются.
На IRC-клиентах с графическим интерфейсом
* usera завершил работу (a.irc.net b.irc.net) * userb завершил работу (a.irc.net b.irc.net) * userc завершил работу (a.irc.net b.irc.net) * usera присоединился к #channel * userb присоединился к #channel * userc присоединился к #channel
В клиенте командной строки irc
00:00 -! - Netsplit a.irc.net <-> b.irc.net завершает работу: usera, userb, userc 00:00 -! - Netsplit завершается , присоединяется: usera, userb, userc
Пользователю частной сети
* usera завершил работу (* .net * .split) * userb завершил работу (* .net * .split) * userc завершил работу (* .net * .split) * usera присоединился к #channel * userb присоединился к #channel * userc присоединился к # канал
Рекомендации
- Хоссейн Биджоли: Интернет-энциклопедия - Том 2 . Wiley 2004, ISBN 978-0-471-22204-0 , стр. 312-313
- ^ Кальт
, Кристоф. @stealth.net>«Интернет-чат с ретрансляцией: протокол сервера» . tools.ietf.org . Проверено 9 января 2019 .
Внешние ссылки
- Руководство Netsplit (извлечено 2 декабря 2009 г. )