Домашнее задание на неделю 43

Задания на изучение ряда прикладных протоколов Internet (DNS, ESMTP, IRC, NNTP.) Контрольный срок сдачи — .

  1. На узел (MX) первичного приема электронной почты (mail submission agent, MSA) поступило одно из нижеследующих сообщений. Руководствуясь RFC 5321, 5322, опишите последовательность действий узла по доставке сообщения. Приведите примеры ESMTP-сеансов связи (до получения ответа на команду DATA включительно — считая, что эта команда всегда выполняется успешно.)

    Во всех случаях, DNS содержит следующие MX-записи. Узел faulty.example.net в ответ на команду RCPT TO: неизменно формирует ответ 452 Disk full. Try again later.

    example.com.     3600   IN  MX  20 chekov.example.com.
    example.com.    86400   IN  MX  40 bester.example.com.
    example.net.     1800   IN  MX  10 faulty.example.net.
    example.net.     7200   IN  MX  20 mx2.example.net.
    example.net.      900   IN  MX  50 helix.example.org.
    example.org.    14400   IN  MX  10 helix.example.org.
    example.org.     9600   IN  MX  20 mx2.example.org.
    
    • From: jsmith@example.org
      To: wabs@example.com, hew8@example.com
      Subject: =?utf-8?B?0L/RgNC+0LLQtdGA0LrQsA==?= 
      Message-Id: <1571902639.199301113@example.org>
      
      Test.
      
    • From: wabs@example.com
      To: jsmith@example.org
      Cc: hew8@example.com
      Subject: Re: =?utf-8?B?0L/RgNC+0LLQtdGA0LrQsA==?= 
      Message-Id: <5db155632b28a71f@example.com>
      In-Reply-To: <1571902639.199301113@example.org>
      MIME-Version: 1.0
      Content-Type: text/plain; charset=utf-8
      Content-Transfer-Encoding: base64
      
      0J/RgNC+0LnQtNC10L3QsC4K
      
    • From: pearshakes@example.com
      To: tuapifdik@example.net
      Subject: perchance to dream 
      MIME-Version: 1.0
      Content-Type: text/plain; charset=koi8-r
      Content-Transfer-Encoding: base64
      
      4tnU2CwgyczJIM7FIMLZ1Ng/INfP1CDXIN7FzSDXz9DSz9MhCv7UzyDCzMHHz9LP
      xM7FxTog087P08nU2CDMySDH0s/NIMkg09TSxczZCvfSwdbE1cDdxcog09XE2MLZ
      IMnMySDXz9PT1MHU2AruwSDNz9LFIMLFxCDJIMvPzt7J1Nggycggws/S2MLPwD8K
      
  2. Попытка доставить сообщение привела к следующему ESMTP-сеансу. Объясните поведение принимающего узла. Какие действия должен теперь предпринять отправляющий узел?

    220 mail.example.com ESMTP Server
    EHLO mx.example.net
    250-mail.example.com Hello mx.example.net [2001:db8:100::25]
    250-SIZE 74565
    250 HELP
    MAIL FROM:<john@example.net>
    250 OK
    RCPT TO:<jane@rnd.example.com>
    451 Greylisted
    
  3. От удаленного MX получен следующий ответ на команду EHLO. Допустимо ли передавать (DATA) этому узлу следующие сообщения «как есть»?

    250-alice.example.org Hello bob.example.net [2001:db8:f928::433f]
    250-SIZE 767
    250-PIPELINING
    250-CHUNKING
    250-PRDR
    250 HELP
    
    • From: larceny.inc@example.com
      To: victim@example.org
      Subject: $$$ make money fast $$$ 
      Message-Id: <1571940331.112301156@phish.example.net>
      
      Click here: http://phish.example.net/
      
    • From: john@example.net
      To: jane@example.org
      Subject: =?utf-8?B?0L/RgNC40LLQtdGC?= 
      Message-Id: <1571940442.799766394@example.net>
      
      How do I love thee?  Let me count the ways.
      I love thee to the depth and breadth and height
      My soul can reach, when feeling out of sight
      For the ends of Being and Ideal Grace.
      I love thee to the level of everyday's
      Most quiet need, by sun and candlelight.
      I love thee freely, as men strive for Right;
      I love thee purely, as they turn from Praise;
      I love thee with the passion put to use
      In my old griefs, and with my childhood's faith;
      I love thee with a love I seemed to lose
      With my lost saints, -- I love thee with the breath,
      Smiles, tears, of all my life! -- and, if God choose,
      I shall but love thee better after death.
      
    • From: evfour@user.example.net
      To: moamdec@support.example.com
      Subject: test 
      MIME-Version: 1.0
      Content-Type: text/plain; charset=utf-8
      Content-Transfer-Encoding: 8bit
      
      Привет, мир!
      
  4. Клиент отправляет запрос следующего типа в отношении имени example.com. рекурсивному DNS-серверу. Руководствуясь STD 13, статьей List of DNS record types Википедии (и, при необходимости, RFC, описывающими запрашиваемый тип ресурсной записи), сформируйте соответствующую полезную нагрузку UDP-пакета и возможный (правдоподобный) ответ сервера.

    Во всех случаях, запрашиваются данные класса IN. Сервер успешно (NOERROR) возвращает две ответных записи. (Для простоты считать разделы additional и authority ответа — пустыми.)

    • AAAA
    • CAA
    • CNAME
    • DHCID
    • HIP
    • LOC
    • MX
    • NAPTR
    • NS
    • RP
    • SSHFP
    • TLSA
    • TXT
    • URI
  5. Клиент запрашивает у рекурсивного DNS-сервера имя, соответствующее адресу 2001:db8:1337:cafe::2:4. Сформируйте полезную нагрузку UDP-пакета и возможный успешный (NOERROR) ответ сервера, указывающий на имя charlie.example.org.

  6. Клиент запрашивает у рекурсивного DNS-сервера данные для имени пример.рф. Какое имя фактически будет указано в DNS-запросе?

  7. Программа, выполняемая на машине с DNS-именем alice.sales.example.com., желает определить имя домена (realm) Kerberos для использования по умолчанию. Каков будет порядок ее обращения к DNS согласно draft-ietf-krb-wg-krb-dns-locate-03? В системе существует единственная подходящая запись, привязывающая имя example.com. к домену EXAMPLE.COM.

  8. Для имени example.net. в DNS указан LDAP-сервер ldap.example.net.:389. Как может выглядеть соответствующая SRV-запись?

  9. Топология сети NNTP-серверов (node-1, …, node-N) задана следующей матрицей смежности, причем элементы матрицы задают условное время, необходимое для передачи сообщения по каналу связи между узлами (если такой канал существует.)

    ∞ 1 ∞ ∞ 1 ∞ ∞ ∞ 9
    5 ∞ 8 ∞ 1 ∞ ∞ ∞ ∞
    ∞ 7 ∞ 8 ∞ ∞ ∞ ∞ ∞
    ∞ ∞ ∞ ∞ ∞ ∞ 1 ∞ ∞
    ∞ ∞ ∞ 7 ∞ ∞ ∞ ∞ ∞
    1 ∞ ∞ ∞ ∞ ∞ 8 9 ∞
    ∞ ∞ ∞ ∞ ∞ 8 ∞ 6 ∞
    ∞ ∞ ∞ ∞ ∞ ∞ 6 ∞ 4
    9 ∞ 7 ∞ ∞ ∞ ∞ 4 ∞
    

    Сообщение с полем заголовка Path: ниже поступает на сервер node-1. Определить порядок дальнейшего распространения сообщения по сети.

    • Path: node-2!not-for-mail
    • Path: node-6!node-7!not-for-mail
    • Path: node-9!node-8!node-6!not-for-mail
  10. Пользователь IRC отправляет на канал #test сообщение Hello, world!. Руководствуясь RFC 2812, 1459 сформируйте запрос. Какой ответ сервера возможен в случае успеха? отказа?