XFOR: Test komunikace služby SMTP pomocí programu Telnet na portu 25

Překlady článku Překlady článku
ID článku: 153119 - Produkty, které se vztahují k tomuto článku.
Tento článek byl dříve publikován CZ153119
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento článek popisuje, jak pomocí programu Telnet navázat spojení s portem 25 počítače se službou SMTP (Simple Mail Transfer Protocol) s cílem vyřešit potíže s komunikací této služby. Ve výchozím nastavení služba SMTP naslouchá na portu 25.

V závislosti na typu problému, ke kterému dochází, můžete provést následující kroky pro řešení problémů. Pokud například máte potíže s odesíláním prostřednictvím služby SMTP mezi dvěma servery Microsoft Exchange 2000 Server, můžete připojení pomocí služby SMTP testovat tak, že se z odesílajícího serveru připojíte pomocí programu Telnet k portu 25 na cílovém serveru. Nebo pokud máte potíže s příjmem pošty pomocí služby SMTP z Internetu, můžete podle kroků v tomto článku testovat připojení k serveru SMTP z hostitele, který se nachází v Internetu (tedy nikoli ve vaší síti).

Další informace

V řadě produktů společnosti Microsoft existuje několik různých variant služby SMTP. Řada produktů Microsoft Windows zahrnuje službu SMTP, která je součástí Internetové informační služby (IIS), a v systému Microsoft Windows NT Server 4.0 byla služba SMTP součástí sady Option Pack. V novějších verzích systému Windows byla služba IIS integrována do operačního systému a lze ji přidat pomocí panelu Přidat nebo odebrat programy v Ovládacích panelech. Kromě toho servery Exchange 2000 a Microsoft Exchange Server 2003 používají existující službu SMTP ze služby IIS s dodatečnými funkcemi. Každá z verzí serveru Microsoft Exchange Server (4.0, 5.0 i 5.5) obsahuje vlastní verzi služby SMTP ve formě konektoru IMC (Internet Mail Connector) nebo služby IMS (Internet Mail Service).

Poznámka: U serveru Exchange verze 5.0 nebo vyšší byl konektor IMC (Internet Mail Connector) přejmenován na službu Internet Mail Service.

Před spuštěním relace programu Telnet je třeba mít úplnou e-mailovou adresu SMTP cílového uživatele, kterému chcete poslat danou testovací zprávu. Tato e-mailová adresa musí být v následujícím formátu:
uživatel@lokalita.doména.com
Je třeba mít úplný název domény (FQDN) nebo adresu IP serverového počítače, ve kterém je spuštěna služba SMTP (například 10.120.159.1). Pokud se servery nacházejí ve vaší organizaci, je možné, že již tyto informace máte. Pokud se jedná o externí servery, lze je nejsnáze získat pomocí nástroje Nslookup.exe, který vyhledá záznamy DNS obsahující tyto údaje. Další informace o nástroji NSlookup získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
200525 Používání nástroje NSlookup.exe
Další informace o tom, jak získat záznamy nástroje Internet Mail Exchanger, naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
203204 XFOR: Jak získat záznamy nástroje Internet Mail Exchanger (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)

Ověřte, zda se služba SMTP na příslušném serveru spustila. Chcete-li otestovat, zda se služba SMTP spustila, můžete provést základní testy uvedené v tomto článku a ověřit, zda byla ze vzdáleného serveru přijata odpověď 220. Tím zároveň ověříte, zda je spuštěna služba SMTP.

Poznámky
  • Některá použití programu Telnet vyžadují zapnutí místní ozvěny, aby se zobrazovaly vámi zadávané příkazy. Dosáhnete toho tak, že v relaci programu Microsoft Telnet zadáte na příkazovém řádku příkaz set local_echo.
  • V systému Microsoft Windows XP zadáte namísto příkazu set local_echo příkaz set localecho.

Základní testování

Pomocí tohoto postupu ověříte, zda spolu mohou hostitelský počítač a vzdálený server SMTP komunikovat. Obdržíte-li po zadání kteréhokoli z následujících příkazů tuto chybovou zprávu, znamená to, že server SMTP nerozpoznal zadané příkazy z důvodu chybné syntaxe nebo chybného příkazu:
500 Command not recognized (Příkaz nebyl rozpoznán.)
Zkontrolujte příkaz a zadejte jej znovu nebo ověřte, zda komunikujete přímo se serverem Microsoft SMTP.

Poznámka: Program Microsoft Telnet neumožňuje používání klávesy BACKSPACE. Uděláte-li během zadávání příkazu chybu, je třeba stisknout klávesu ENTER a začít zadávat příkaz znovu.

Podle následujícího postupu spustíte program Telnet z příkazového řádku. Chcete-li spustit příkazový řádek, klepněte na tlačítko Start a na příkaz Spustit, do pole Otevřít zadejte příkaz cmd a potom klepněte na tlačítko OK.
  1. Relaci programu Telnet lze spustit pomocí příkazu Telnet v následujícím formátu:

    Poznámka: Po zadání každého řádku stiskněte klávesu ENTER.
    telnet název_serveru číslo_portu
    Například zadejte:
    telnet mail.contoso.com 25
    Poznámka: Položku název_serveru lze nahradit adresou IP nebo úplným názvem domény (FQDN) serveru SMTP, ke kterému se chcete připojit. Po zadání každého příkazu stiskněte klávesu ENTER.

    Pokud je příkaz funkční, obdržíte ze serveru SMTP odezvu podobnou následující:
    220 lokalita.contoso.com Microsoft Exchange Internet Mail Connector <číslo verze konektoru IMC>
    Poznámka: Existují různé verze serveru Microsoft SMTP nebo serverů SMTP jiných výrobců, a proto můžete z přijímajícího serveru obdržet různé odezvy. Důležité je, abyste obdrželi odezvu 220 s úplným názvem domény (FQDN) serveru a s verzí služby SMTP. Dále platí, že všechny verze serveru Microsoft SMTP zahrnují do odezvy 220 označení „Microsoft“.
  2. Zahajte komunikaci zadáním následujícího příkazu:
    EHLO test.com
    Poznámka: Lze použít příkaz HELO, avšak příkaz EHLO představuje sloveso obsažené v sadě sloves rozšířeného protokolu SMTP, která je podporována ve všech aktuálních implementacích služby SMTP od společnosti Microsoft. Je vhodné použít příkaz EHLO, ne však pokud se domníváte, že došlo k problému se slovesy rozšířeného protokolu SMTP.

    Jestliže je příkaz úspěšný, zobrazí se následující odezva:
    250 OK
  3. Zadáním následujícího příkazu přijímajícímu serveru SMTP sdělíte, od koho zpráva pochází:
    MAIL FROM:Admin@test.com
    Poznámka: Touto adresou může být libovolná adresa SMTP, kterou preferujete, avšak je vhodné zvážit následující okolnosti:
    1. Některé poštovní systémy SMTP na základě adresy MAIL FROM: filtrují zprávy a nemusejí některým adresám IP umožnit připojení nebo nemusejí adrese IP umožnit odeslání e-mailů do poštovního systému SMTP v případě, že připojující se adresa IP neodpovídá doméně, ve které se poštovní systém SMTP nachází. V tomto příkladu je touto doménou test.com.
    2. Nepoužijete-li při odeslání zprávy platnou e-mailovou adresu, nelze zjistit, zda u zprávy došlo k potížím s doručením, protože zpráva o nedoručení (NDR) nemůže být přenesena na adresu IP, která není platná. Použijete-li platnou e-mailovou adresu, obdržíte ze serveru SMTP následující odezvu:
      250 OK - MAIL FROM Admin@test.com
  4. Zadáním následujícího příkazu přijímajícímu serveru SMTP sdělíte, komu je zpráva určena.

    Poznámka: Je vhodné vždy použít platnou adresu SMTP příjemce v doméně, do které zprávu odesíláte. Odesíláte-li zprávu například na adresu jan@domena.com, musíte si být jisti, že adresa jan@domena.com v doméně existuje. Jinak obdržíte zprávu NDR.

    Zadejte následující příkaz s adresou SMTP uživatele, kterému chcete zprávu odeslat:
    RCPT TO: uživatel@doména.com
    Obdržíte následující odezvu:
    250 OK - Recipient uživatel@doména.com
  5. Zadáním následujícího příkazu serveru SMTP sdělíte, že jste připraveni odesílat data:
    DATA
    Obdržíte následující odezvu:
    354 Send data. End with CRLF.CRLF
  6. Nyní jste připraveni k zadání sekce 822/2822 zprávy. Uživatel uvidí tuto část zprávy ve své složce Doručená pošta. Zadáním následujícího příkazu přidáte řádek předmětu:
    Subject: testovací zpráva
    Stiskněte dvakrát klávesu ENTER. Z tohoto příkazu neobdržíte odezvu.

    Poznámka: Dva příkazy ENTER splňují požadavky vyplývající z dokumentů RFC (Request for Comments) 822 a 2822. Za příkazy 822 musí následovat prázdný řádek.
  7. Zadáním následujícího příkazu přidáte text do hlavní části zprávy:
    Toto je testovací zpráva. U tohoto příkazu se nezobrazí odezva.
  8. Zadejte tečku (.) na následující prázdný řádek a poté stiskněte klávesu ENTER: Obdržíte následující odezvu:
    250 OK
  9. Ukončete spojení zadáním následujícího příkazu:
    QUIT
    Obdržíte následující odezvu:
    221 closing connection
  10. Ověřte, zda odeslanou zprávu příjemce obdržel. Pokud se v protokolu událostí aplikace objeví nějaké chybové zprávy o událostech nebo pokud dojde k potížím s příjmem zprávy, zkontrolujte konfiguraci nebo komunikaci s hostitelem.

Pokročilé testování

Vedle základního testovacího postupu uvedeného v tomto článku lze k testování pošty v obou směrech použít potvrzení o doručení. Pomocí této metody lze ověřit, zda server SMTP může přijímat příchozí připojení a generovat potvrzení o doručení zpět odesílateli, a tím otestovat odchozí připojení serveru SMTP.

Chcete-li u testovací zprávy požadovat potvrzení o doručení, přejděte ke kroku 4 v části Základní testování v tomto článku a ověřte, zda zadané informace představují platnou e-mailovou adresu, která může přijmout potvrzení o doručení. Potom v následujícím kroku 5 zadejte v relaci programu Telnet následující příkaz:
RCPT TO:uživatel@lokalita.doména.com notify=success,failure

Vlastnosti

ID článku: 153119 - Poslední aktualizace: 3. prosince 2007 - Revize: 6.3
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Exchange Server 2003 Standard Edition
  • Microsoft Exchange Server 2003 Enterprise Edition
  • Microsoft Exchange 2000 Server Standard Edition
  • Microsoft Exchange Server 5.5 Standard Edition
  • Microsoft Exchange Server 5.0 Standard Edition
  • Microsoft Exchange Server 4.0 Standard Edition
  • Microsoft Internet Information Services 6.0
  • Microsoft Internet Information Services 5.0
  • Microsoft Internet Information Server 4.0
Klíčová slova: 
kbhowto KB153119

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com