Как работает электронная почта

Как работает электронная почта

Самый старый формат общения в интернете

Уже двадцать лет все предсказывают смерть электронной почты, а она всё никак. В этой статье разбираем, как она устроена. 

Что умеет электронная почта

Электронная почта — асинхронный формат общения в интернете. Асинхронный — это значит, что никто из участников не сидит с открытым почтовым клиентом и не ждёт ответа в реальном времени, а просто читает почту, когда ему удобно. Это похоже на то, как работают обычные бумажные письма: мы отправляем конверт, но когда его получат и прочитают — от нас уже не зависит.

По электронной почте можно отправить как обычный текст (как в бумажном письме), так и приложить к нему какие-то дополнительные данные:

  • фотографии,
  • документы,
  • музыку и любые другие файлы.

Это как на почте положить в бандероль кроме письма пачку фотографий, открытку с приветом и банку огурцов от бабушки — получается как бы письмо с прикреплёнными дополнительными материалами.

👉 Отправить слишком большой файл не получится — почти у всех почтовых серверов есть ограничения на максимальный размер файла или письма. Но в таких случаях можно большой файл залить в облако и дать на него ссылку.

Для чего нужна

Обычно электронная почта нужна в трёх случаях: 

  1. Сообщить что-то не очень срочное. При этом информация может быть важной, но не стоит ожидать, что собеседник моментально читает все письма, которые ему приходят.
  2. Передать что-то важное или нужное. Это могут быть документы, ссылка на папку в облачном хранилище, отчёт за неделю или список покупок для отпуска. 
  3. Восстановить пароль от онлайн-сервиса, если его забыл; уведомить о доставке заказа; прислать электронный чек после покупки.

Адрес электронной почты

Чтобы получать и отправлять письма, нужно получить адрес электронной почты. Раньше их выдавали только провайдеры интернета своим абонентам — например, если ты подключался к провайдеру «Кубаньэлектросвязь», то тебе выдавался адрес вроде name@kuban.net. Часто услуга была платной. 

Потом появились онлайн-сервисы, которые выдают адреса всем желающим и бесплатно. Сейчас каждый может зарегистрировать сколько угодно электронных почт — для этого достаточно зайти на Яндекс и придумать имя для своего почтового ящика.

Каждый адрес электронной почты состоит из трёх частей: имени, символа @ и адреса почтового сервера:

Как работает электронная почта

Имя пользователя каждый придумывает сам, но есть момент: если кто-то до вас уже взял себе такое имя, то вы не сможете его использовать и нужно придумать другое. Для имени используются цифры, буквы латинского алфавита, дефис, знак подчёркивания. Некоторые почтовые службы также разрешают использовать точку, например: misha.ivanov@yandex.ru  

Разделитель — это специальный символ @, который отделяет имя пользователя от адреса сервера. В русском языке его называют собакой, в английском — at, в Польше — обезьяной, а во Франции — улиткой. Происхождение — от предлога at, «при». Получается «Миша Иванов при Яндексе». 

Адрес сервера показывает, на какой сервер будут приходить входящие письма. Если кто-то напишет на адрес thecode.media@yandex.ru, то это письмо будет обрабатывать почтовый сервер Яндекса.

Почтовые серверы

Чтобы письма можно было отправлять и получать, используют почтовые серверы. Они решают две задачи:

  1. Пересылают по нужному адресу письма, которые вы отправляете.
  2. Принимают и хранят у себя письма, которые пришли вам.

Когда компьютеров в сети было всего несколько сотен, у каждого был свой адрес, все писали друг другу письма напрямую и отдельных почтовых серверов не было. Потом, когда компьютеров стало много, стало ясно, что хранить полный список всех пользователей уже не получится. Вместо этого каждый провайдер интернета запустил свой почтовый сервер, а пользователям дал имена внутри этого сервера.

Например, если у провайдера был свой сервер provider.com, то все, кто пользовался его услугами, получали адрес вида vasya@provider.com или thecode@provider.com. Если менялся провайдер — менялся и адрес, потому что у каждого провайдера был свой сервер.

Сейчас такого уже нет — можно использовать бесплатные серверы Яндекса или вообще поднять собственный сервер и настроить его для работы с почтой. Но вариант получить адрес в домене провайдера тоже остался, мало ли что.

👉 Технически почтовый сервер — это не столько «компьютер», который обрабатывает письма, сколько программа, которая работает на этом компьютере. Вы можете скачать на свой компьютер программу почтового сервера, запустить, настроить адресацию и обмениваться письмами сколько угодно. Но так обычно не делают, потому что гораздо удобнее хранить корреспонденцию на чужом сервере и подключаться к нему по необходимости. 

Как электронные письма доставляются по назначению

Чтобы написать письмо, используют почтовые клиенты — программы, которые занимаются отправкой писем на сервер. Это может быть отдельная программа, например Outlook или «Почта» в MacOS, а может быть вкладка в браузере, если используется онлайн-сервис.

Когда вы нажимаете кнопку «Отправить», то дальше всё происходит так:

  1. Почтовый клиент находит адрес вашего сервера и передаёт ему письмо. 
  2. Почтовый сервер смотрит в адресе письма на доменное имя получателя и обращается к нему, мол, держи новое письмо.
  3. Сервер получателя смотрит, есть ли у него пользователь с таким именем, как в адресе. Если есть — принимает письмо, если нет — отвечает, что вы ошиблись адресом, тут таких нет.
  4. Если всё в порядке, письмо отправляется на сервер получателя и лежит там.
  5. Когда получатель проверит почту, сервер ему скажет — тебе новое письмо, сейчас я тебе его отправлю.
  6. Получатель принимает письмо от своего сервера, задача решена.

Эта схема не учитывает много тонкостей (например, когда есть переадресация писем или на одном домене стоит почтовый сервер из другого домена), но в целом всё работает так. А нюансы отправки разберём в следующей статье, заодно и посмотрим, из чего на самом деле состоит электронное письмо.

Что дальше

Впереди ещё много интересных тем: заглянем внутрь служебной части письма, чтобы научиться отличать письма от мошенников, а потом попробуем запустить свой почтовый сервер. Подписывайтесь, чтобы не пропустить новые статьи.

Текст:

Михаил Полянин

Редактор:

Максим Ильяхов

Художник:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Никита Кучеров

Соцсети:

Олег Вешкурцев

Веб-разработка — это новый черный
А мы знаем толк в моде и поможем освоить новую специальность за полгода.
Посмотреть
Фронтенд — это новый черный
Еще по теме
prev
next
ООП: зачем нужны абстракции и классы
Зачем нужны абстракции и интерфейсы

И что это вообще такое?

Какие бывают хостинги

Выделенный сервер, VPS, KVM, VDS и прочие умные слова.

Facebook хранил наши пароли в виде текста. Что это значит?
Facebook хранил наши пароли в виде текста. Что это значит?

Тут такое!

Вам мало языка C? Попробуйте C++
Вам мало языка C? Попробуйте C++

Шустрый, мощный, весь обвешан классами.

«Нормально делай и нормально будет»
«Нормально делай и нормально будет»

Даниил Попов о современной андроид-разработке, пользе твиттера и уходе из Авито.

Что такое генераторы в программировании
Что такое генераторы в программировании

Они лениво раз за разом вычисляют новые значения, но не помнят, что было до этого.

Создаём CSS-сетку нужного размера

Рассказываем, как сделать шаблон любой страницы.

Тысячи пользователей онлайн: как работать, когда у тебя высоконагруженный проект
Тысячи пользователей онлайн: как работать, когда у тебя высоконагруженный проект

Скорость решает.

Что такое трояны и вирусы — на самом деле

Чем может заразиться компьютер и насколько это реально страшно.

Кто такая Unity и почему она всем нравится

Бесплатный движок с классной графикой, реалистичной физикой и понятным интерфейсом.

Невзламываемый шифр Вернама
Невзламываемый шифр Вернама

Его нельзя взломать даже теоретически.

Процессоры x86 и ARM — в чём разница?
Процессоры x86 и ARM — в чём разница?

Правда ли, что процессор в вашем мобильнике мощнее, чем в вашем компьютере?

Все опять заговорили про VPN. Что это такое, объясни мне!

Мы не можем вам сказать. Но можем показать.

easy