DSN: សេចក្តីជូនដំណឹងស្ថានភាពការដឹកជញ្ជូនសម្រាប់អ៊ីម៉ែលរបស់ SMTP

ស្វែងយល់ពីរបៀបដែល DSN មានបំណងណែនាំពីស្ថានភាពចែកចាយទៅអ៊ីម៉ែល SMTP ។

ធ្លាប់ឆ្ងល់តើមានអ្វីកើតឡើងចំពោះអ៊ីមែលដែលអ្នកបានផ្ញើទៅ?

សូម្បីតែមើលខ្លីៗនៅ ពិធីការ SMTP នឹងមានអ្នកសម្គាល់ឃើញថាក្រៅពី HELO ធម្មតាក៏មាន EHLO ផងដែរដែលធ្វើឱ្យម៉ាស៊ីនមេ SMTP ដែលបានពង្រីក សមត្ថភាពរបស់ខ្លួនលើសពីស្តង់ដារដើម។ មួយក្នុងចំណោមទាំងនេះគឺ DSN ។ DSN? តើ DNA និង DDT មិនគ្រប់គ្រាន់ទេ?

ដើម្បីអះអាងថាអ៊ីម៉ែលមិនគួរឱ្យទុកចិត្តបានថានរណាម្នាក់គួរតែ " ចិញ្ចឹមម៉ាស៊ីនបម្រើរបស់ពួកគេកាន់តែប្រសើរឡើងវាស៊ីសំបុត្ររបស់ខ្ញុំ ... " វាមិនមែនជារឿងចម្លែកទេ។ ខ្ញុំធ្វើវាដោយខ្លួនឯង។ ប៉ុន្តែមិនមានហេតុផលច្រើនដើម្បីគាំទ្រការសង្ស័យទាំងនេះទេ។

ការដឹកជញ្ជូនរបស់ S tatus N oteification បាននៅជុំវិញចាប់តាំងពី RFC 821 (ពី 1982) ។ ដរាបណាផ្នែកទិន្នន័យនៃពិធីការ SMTP ត្រូវបានបញ្ចប់ហើយម៉ាស៊ីនបម្រើបានទទួលយកអ៊ីម៉ែលសម្រាប់ការចែកចាយវាទទួលខុសត្រូវចំពោះវា។ ប្រសិនបើហេតុផលណាមួយវាមិនអាចយកវាទៅអ្នកទទួលទេវាត្រូវតែផ្ញើវាត្រឡប់មកវិញជាមួយការជូនដំណឹងកំហុសទៅអ្នកផ្ញើដើម។ នេះបណ្តាលឱ្យ អ៊ីម៉ែល មិនច្បាស់លាស់មួយចំនួន។

ក្រៅពីនោះអនុសញ្ញាចាស់នេះមានន័យថាអ្នកទទួលបានសារ កំហុស ឬអ្នក មិន មាន អ្វីសោះ ក្នុងករណីដែលអ្នកមិនដឹង អ្វីទេ : អ៊ីម៉ែលប្រហែលជាបានមកដល់ឬប្រហែលជាមិនមាន។ សារកំហុសនៅក្នុងករណីជាច្រើនមានប្រយោជន៍ដូចសារឥតបានការ។ ជាមួយនឹងអ៊ីម៉ែលកាន់តែមានសារៈសំខាន់ជាងនេះទៀតមិនពេញចិត្ត (ដូចជាកាលពីមុន) ។

ផ្នែកបន្ថែម DSN ទៅ SMTP

RFC 1891 ស្នើផ្នែកបន្ថែមមួយចំនួនទៅនឹងពិធីការ SMTP ដែលគួរតែនាំឱ្យមានប្រព័ន្ធ DSN ដែលអាចទុកចិត្តបាននិងអាចប្រើបានច្រើន។ វាជាសំណុំនៃផ្នែកបន្ថែមនៃពាក្យបញ្ជា MAIL និង RCPT (ប្រសិនបើនេះគ្មានន័យអ្វីសម្រាប់អ្នកទេចូរអាន របៀបដំណើរការរបស់ SMTP ហើយបន្ទាប់មកត្រឡប់មកទីនេះវិញ។ ) ។

គ្មាន EHLO, មិនមានការសប្បាយ

ដំបូងយើងត្រូវប្រាកដថាម៉ាស៊ីនមេគាំទ្រ DSN ។ ដូច្នេះយើងត្រូវនិយាយ EHLO ឱ្យគាត់ហើយស្តាប់ដោយយកចិត្តទុកដាក់។ ប្រសិនបើវាឆ្លើយតបជាមួយ DSN somewher នៅក្នុងបញ្ជីលក្ខណៈពិសេសដែលយើងអាចសន្មត់ថាវានឹងអាចបម្រើសំណើរបស់យើង។ ប្រសិនបើមិនបាន, បន្ទាប់មកមិនមាន: យើងអាចព្យាយាមម៉ាស៊ីនបម្រើផ្សេងឬគ្រាន់តែធ្លាក់ត្រឡប់ទៅ អ៊ីម៉ែល ដោយគ្មាន DSN ។ ឧទាហរណ៍ (ការបញ្ចូលរបស់ខ្ញុំពណ៌ខៀវលទ្ធផលម៉ាស៊ីនបម្រើរបស់ខ្មៅ):

220 larose.magnet.at ESMTP Sendmail 8.8.6 / 8.8.6; ថ្ងៃអាទិត្យទី 24 ខែសីហាឆ្នាំ 1997 ម៉ោង 18:23:22 +0200
EHLO localhost
250-larose.magnet.at Hello localhost [127.0.0.1], រីករាយនឹងជួបអ្នក
250 EXPN
250 វ៉េក
250-8BITMIME
250 ទំហំ
250 DSN
250-ONEX
250-ETRN
250-XUSR
250 ជំនួយ

សំណាងល្អក្នុងចំណោមរបស់ផ្សេងទៀតដែលយើងរក DSN ។

ផ្នែកបន្ថែមអ្នកផ្ញើ DSN

ពាក្យបញ្ជាបន្ទាប់ជាទូទៅគឺ MAIL FROM ។ ជាមួយនឹង DSN, នេះគឺមិនមានភាពខុសគ្នា។ ប៉ុន្តែមានជម្រើសពីរបន្ថែមទៀតដែលអ្នកអាចចេញ: RET និង ENVID ។

ជម្រើស RET ត្រូវបានដាក់ដោយអយុត្តិធម៌នៅក្នុងពាក្យបញ្ជា MAIL ប៉ុន្តែវាសមនៅទីនេះក៏ដូចជាកន្លែងណាផ្សេងទៀត។ គោលបំណងគឺដើម្បីបញ្ជាក់ពីចំនួននៃសារដើមរបស់អ្នកគួរតែត្រូវបានត្រឡប់មកវិញក្នុងករណីមានការបរាជ័យនៃការដឹកជញ្ជូន។ អាគុយម៉ង់ត្រឹមត្រូវគឺ FULL និង HDRS ។ មុនមានន័យថាសារទាំងមូលគួរតែត្រូវបានបញ្ចូលនៅក្នុងសារកំហុស HDRS ណែនាំឱ្យម៉ាស៊ីនបម្រើបញ្ជូនតែបឋមកថានៃសំបុត្រដែលបរាជ័យ។ ប្រសិនបើ RET មិនត្រូវបានបញ្ជាក់នោះវាអាស្រ័យលើម៉ាស៊ីនបម្រើអ្វីដែលត្រូវធ្វើ។ ក្នុងករណីភាគច្រើន HDRS នឹងជាតម្លៃលំនាំដើម។

ENVID ពិតជាកម្មសិទ្ធិរបស់អ្នកផ្ញើដូចដែលនាងឬ (ជា) កម្មវិធីអ៊ីមែលរបស់នាងនឹងក្លាយជាលេខតែមួយគត់ដែលធ្វើឱ្យយើង កំណត់អត្តសញ្ញាណស្រោមសំបុត្រ នេះ។ គោលបំណងរបស់វាគឺប្រាប់អ្នកផ្ញើរដែលអាចផ្ញើរសារកំហុសដែលអាចធ្វើទៅបាន។ ទ្រង់ទ្រាយនៃអត្តសញ្ញាណប័ណ្ណនេះត្រូវបានរក្សាទុកជាមូលដ្ឋានទៅការស្រមើលស្រមៃរបស់អ្នកផ្ញើ។ យើងនឹងមិនប្រើ ENVID ក្នុងឧទាហរណ៍របស់យើងទេ (ការស្រមើលស្រមៃ!):

សំបុត្រពី: sender@example.com RET = HDRS
250 sender@example.com ... អ្នកផ្ញើយល់ព្រម

ជាក់ស្តែង, យើងគ្រាន់តែចង់ទទួលបានបឋមកថាត្រឡប់មកវិញនៅក្នុង DSN របស់យើង។

ផ្នែកបន្ថែមអ្នកទទួល DSN

កម្មវិធី RCPT TO: ទទួលបានចំណែកនៃផ្នែកបន្ថែមដោយយុត្តិធម៌ផងដែរ: NOTIFY និង ORCPT ។

NOTIFY គឺជាបេះដូងពិតនៃ DSN ។ វាប្រាប់ម៉ាស៊ីនបម្រើ នៅពេល ផ្ញើការជូនដំណឹងអំពីស្ថានភាពការចែកចាយ។ តម្លៃដំបូងដែលអាចមានគឺមិនដែលមានន័យថានៅក្រោមកាលៈទេសៈណាមួយ DSN ត្រូវតែត្រូវបានត្រឡប់ទៅអ្នកផ្ញើ។ នេះមិនអាចទៅរួចទេបើគ្មាន DSN ។ បន្ទាប់មកមាន SUCCESS ដែលនឹងជូនដំណឹងដល់អ្នកនៅពេលដែលសំបុត្ររបស់អ្នកត្រូវបានលុបចោលនៅតាមគោលដៅរបស់វា។ ការបរាជ័យគឺជាសមភាគីរបស់ SUCCESS (!): DSN មួយនឹងមកដល់ប្រសិនបើមានការខកខានក្នុងការដឹកជញ្ជូន។ ជម្រើសចុងក្រោយគឺ DELAY: អ្នកនឹងត្រូវបានជូនដំណឹងប្រសិនបើមានការពន្យារពេលមិនប្រក្រតីក្នុងការដឹកជញ្ជូនប៉ុន្តែលទ្ធផលនៃការដឹកជញ្ជូនពិតប្រាកដ (ជោគជ័យឬបរាជ័យ) មិនទាន់ត្រូវបានសម្រេចចិត្តនៅឡើយទេ។ មិន ត្រូវ ជាអាគុយម៉ង់តែមួយទេប្រសិនបើវាបានបញ្ជាក់ហើយបីផ្សេងទៀតអាចលេចឡើងក្នុងបញ្ជីដែលកំណត់ដោយសញ្ញាក្បៀស។ ភាពជោគជ័យនិងភាពបរាជ័យនឹងបង្កើតក្រុមដ៏ខ្លាំងក្លាមួយរួមគ្នា (!) ដែលប្រាប់អ្នកក្នុងករណីអ្វីដែលកើតឡើងចំពោះសំបុត្ររបស់អ្នក។

គោលបំណងរបស់ ORCPT គឺដើម្បីការពារអ្នកដែល បាន ទទួលសារអ៊ីម៉ែលដំបូងប្រសិនបើវាត្រូវបានបញ្ជូនបន្តទៅអាសយដ្ឋានមួយផ្សេងទៀត។ អាគុយម៉ង់ទៅជម្រើសនេះគឺអាសយដ្ឋានអ៊ីមែលរបស់អ្នកទទួលដើមរួមជាមួយប្រភេទអាសយដ្ឋាន។ ប្រភេទអាសយដ្ឋានភ្ជាប់មកជាមុនដំបូងដោយសញ្ញាចុចនិងសញ្ញាអាសយដ្ឋានចុងក្រោយ។ ឧទាហរណ៍:

RCPT TO: support@example.com NOTIFY = បរាជ័យ, យឺត ORCPT = rfc822 support@example.com
250 support@example.com ... អ្នកទទួលយល់ព្រម (នឹងរង់ចាំ)

នេះត្រូវបានបន្តដោយទិន្នន័យដូចដែលយើងដឹងហើយនៅទីបំផុតសង្ឃឹមថាការជូនដំណឹងពីស្ថានភាពនៃការផ្តល់ដំណឹងជូនដល់អ្នកអំពីភាពជោគជ័យ។

DSN ធ្វើការទេ?

ជាការពិតណាស់ភាពស្រស់ស្អាតនិងភាពវៃឆ្លាតទាំងអស់នេះនឹងដំណើរការបានប្រសិនបើភ្នាក់ងារដឹកជញ្ចូនសំបុត្រពីអ្នកផ្ញើទៅកាន់អ្នកទទួលជំនួយ DSN ។ ថ្ងៃខ្លះពួកគេនឹង។