XFOR: Używanie usługi Telnet do łączenia się z portem 25 w celu testowania komunikacji za pomocą protokołu SMTP

Tłumaczenia artykułów Tłumaczenia artykułów
Numer ID artykułu: 153119 - Zobacz jakich produktów dotyczą zawarte w tym artykule porady.
Rozwiń wszystko | Zwiń wszystko

Na tej stronie

Streszczenie

W tym artykule opisano sposób łączenia się za pomocą usługi Telnet z portem 25 na komputerze, na którym są uruchomione usługi protokołu SMTP (Simple Mail Transfer Protocol), w celu rozwiązywania problemów z komunikacją. Informacje podane w tym artykule, w tym komunikaty o błędach, dotyczą tylko sytuacji rozwiązywania problemów z komunikacją za pomocą protokołu SMTP z serwerami programu Microsoft Exchange i nie są przeznaczone do wykorzystania w celach ogólnego rozwiązywania problemów.

Można korzystać z poniższych procedur rozwiązywania problemów, które są przeznaczone dla występującego problemu. Na przykład jeśli występują problemy z wysyłaniem danych za pomocą protokołu SMTP między dwoma serwerami programu Microsoft Exchange 2000 Server, można przetestować łączność za pomocą protokołu SMTP, używając usługi Telnet na serwerze wysyłającym do połączenia się z portem 25 na serwerze docelowym. Domyślnie protokół SMTP nasłuchuje na porcie 25. Z kolei w przypadku problemów z odbieraniem poczty z Internetu za pomocą protokołu SMTP można wykonać kroki przedstawione w tym artykule, aby przetestować łączność między serwerem SMTP a hostem, który znajduje się w Internecie i nie jest składnikiem sieci użytkownika.

UWAGA: W tym artykule przedstawiono tylko informacje na temat testu łączności związanego z obsługą wiadomości w programie Exchange Server. Jeśli nie można połączyć się z serwerem programu Exchange Server, należy znaleźć artykuł w bazie wiedzy, w którym opisano występujące symptomy lub wyświetlane komunikaty o błędach. Aby uzyskać dodatkowe informacje dotyczące rozwiązywania problemów z transportem w programie Exchange, zobacz następujący artykuł z bazy wiedzy Microsoft Knowledge Base:
257265 General troubleshooting for transport issues in Exchange 2000 Server and in Exchange Server 2003

Więcej informacji

Istnieje kilka różnych odmian usługi protokołu SMTP w linii produktów firmy Microsoft. Linia produktów Microsoft Windows jest wyposażona w usługę protokołu SMTP wchodzącą w skład Internetowych usług informacyjnych (IIS), a w systemie Microsoft Windows NT Server 4.0 usługa protokołu SMTP wchodziła w skład pakietu Option Pack. W najnowszych wersjach systemu Windows usługi IIS zostały zintegrowane z systemem operacyjnym i można je dodać, używając apletu Dodaj lub usuń programy w Panelu sterowania. Ponadto w programach Exchange 2000 i Microsoft Exchange Server 2003 jest używana usługa protokołu SMTP z usług IIS wyposażona w dodatkowe funkcje. Program Microsoft Exchange Server w wersji 4.0, 5.0 i 5.5 jest dostarczany z własnymi wersjami usługi protokołu SMTP w formie usługi IMC (Internet Mail Connector) lub usługi IMS (Internet Mail Service).

Uwaga: W programie Exchange 5.0 i nowszych usługa IMC (Internet Mail Connector) nosi nazwę usługi IMS (Internet Mail Service).

Przed rozpoczęciem sesji usługi Telnet trzeba mieć pełny adres e-mail SMTP użytkownika docelowego, do którego ma zostać wysłana ta wiadomość testowa. Adres e-mail musi mieć następujący format:
Użytkownik@witryna.domena.com
Trzeba także mieć w pełni kwalifikowaną nazwę domeny (FQDN) lub adres IP komputera serwera, na którym są uruchomione usługi protokołu SMTP (na przykład 10.120.159.1). Jeśli serwery znajdują się w organizacji użytkownika, prawdopodobnie te informacje są już znane. Jeśli serwery są serwerami zewnętrznymi, najprostszym sposobem znalezienia tych informacji jest użycie programu Nslookup.exe w celu znalezienia rekordów DNS, które zawierają te informacje. Aby uzyskać dodatkowe informacje dotyczące programu NSlookup, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
200525 Używanie narzędzia NSlookup.exe
Aby uzyskać dodatkowe informacje dotyczące sposobu uzyskiwania rekordów programu Internet Mail Exchanger, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
203204 XFOR: How to Obtain Internet Mail Exchanger Records

Należy upewnić się, że protokół SMTP został uruchomiony na serwerze, na którym działa usługa protokołu SMTP. Aby sprawdzić, czy został uruchomiony protokół SMTP, należy użyć podstawowych testów opisanych w tym artykule, a następnie zobaczyć, czy otrzymano odpowiedź 220 z serwera zdalnego. W ten sposób można też sprawdzić, czy działa usługa protokołu SMTP.

Uwagi:
  • W niektórych aplikacjach do obsługi usługi Telnet należy włączyć echo lokalne, aby wpisywane polecenia były widoczne. Aby to zrobić w trakcie sesji usługi Microsoft Telnet, w wierszu polecenia wpisz polecenie set local_echo.
  • W systemie Microsoft Windows XP wpisz polecenie set localecho zamiast polecenia set local_echo.

Testowanie podstawowe

Wykonaj poniższe kroki, aby upewnić się, że komputer hosta i zdalny serwer SMTP mogą komunikować się ze sobą. Jeśli po wpisaniu dowolnego z następujących poleceń zostanie wyświetlony następujący komunikat o błędzie, będzie to oznaczać, że serwer SMTP nie rozpoznaje wpisanego polecenia z powodu błędu składni lub błędnego polecenia:
500 Polecenie nierozpoznane
Sprawdź polecenie i wpisz je ponownie lub sprawdź, czy komunikujesz się bezpośrednio z serwerem SMTP firmy Microsoft.

Uwaga: Usługa Microsoft Telnet nie zezwala na używania klawisza Backspace. W przypadku pomyłki podczas wpisywania polecenia należy nacisnąć klawisz ENTER i wpisać nowe polecenie.

Wykonanie poniższych kroków umożliwia uruchomienie usługi Telnet z wiersza polecenia. Aby otworzyć wiersz polecenia, kliknij przycisk Start, kliknij polecenie Uruchom, w polu Otwórz wpisz polecenie cmd, a następnie kliknij przycisk OK.
  1. Możesz rozpocząć sesję usługi Telnet, używając polecenia Telnet w następującym formacie:

    Uwaga: Po wpisaniu każdego wiersza należy nacisnąć klawisz ENTER.
    telnet nazwa_serwera numer_portu
    Wpisz na przykład:
    telnet mail.contoso.com 25
    Uwaga: Ciąg nazwa_serwera można zastąpić adresem IP lub nazwą FQDN serwera SMTP, z którym ma zostać nawiązane połączenie. Pamiętaj, aby po wpisaniu każdego polecenia naciskać klawisz ENTER.

    Jeśli polecenie będzie działać, zostanie odebrana odpowiedź od serwera SMTP podobna do następującej:
    220 site.contoso.com Microsoft Exchange Internet Mail Connector <numer wersji usługi IMC>
    Uwaga: Istnieją różne wersje serwerów SMTP firmy Microsoft i innych firm, dlatego otrzymana odpowiedź może być inna. Ważne jest, aby odebrać odpowiedź 220 zawierającą nazwę FQDN serwera oraz wersję protokołu SMTP. Wszystkie wersje serwerów SMTP firmy Microsoft umieszczają w odpowiedzi 220 wyraz Microsoft.
  2. Rozpocznij komunikację, wpisując następujące polecenie:
    EHLO test.com
    Uwaga: Można użyć polecenia HELO, ale EHLO jest zleceniem, które znajduje się w rozszerzonym zestawie zleceń protokołu SMTP, a ten zestaw jest obsługiwany we wszystkich bieżących implementacjach protokołu SMTP firmy Microsoft. Użycie polecenia EHLO jest dobrym pomysłem, chyba że zachodzi podejrzenie, że problem dotyczy rozszerzonych zleceń protokołu SMTP.

    Jeśli polecenie zostanie wykonane pomyślnie, pojawi się następująca odpowiedź:
    250 OK
  3. Wpisz następujące polecenie, aby poinformować odbierający serwer SMTP, od kogo pochodzi wiadomość:
    MAIL FROM:Admin@test.com
    Uwaga: Ten adres może być dowolnym adresem SMTP, ale warto wziąć pod uwagę następujące zagadnienia:
    1. Niektóre systemy poczty SMTP filtrują wiadomości ma podstawie adresów MAIL FROM: i mogą nie zezwalać pewnym adresom IP na łączenie się lub mogą nie zezwalać na wysyłanie z danego adresu IP wiadomości e-mail do systemu poczty SMTP, jeśli adres IP używany do połączenia nie należy do domeny, w której znajduje się system poczty SMTP. W tym przykładzie tą domeną jest domena test.com.
    2. Jeśli w celu wysłania wiadomości nie zostanie użyty prawidłowy adres e-mail, nie będzie można określić, czy wystąpił problem z dostarczaniem wiadomości, ponieważ raport o niedostarczeniu (NDR) nie może dotrzeć do nieprawidłowego adresu IP. Po użyciu prawidłowego adresu e-mail zostanie odebrana następująca odpowiedź z serwera SMTP:
      250 OK - MAIL FROM Admin@test.com
  4. Wpisz następujące polecenie, aby poinformować odbierający serwer SMTP, do kogo jest wysyłana wiadomość:

    Uwaga: Zawsze warto używać prawidłowego adresu SMTP odbiorcy w domenie, do której jest wysyłana wiadomość. Na przykład jeśli wysyła się wiadomość na adres jan@domena.com, należy mieć pewność, że adres jan@domena.com istnieje w domenie. W przeciwnym razie zostanie odebrany raport o niedostarczeniu.

    Wpisz następujące polecenie z adresem SMTP osoby, do której chcesz wysłać wiadomość:
    RCPT TO: Użytkownik@domena.com
    Zostanie odebrana następująca odpowiedź:
    250 OK — Adresat Użytkownik@domena.com
  5. Wpisz następujące polecenie, aby poinformować serwer SMTP, że możesz wysyłać dane:
    DATA
    Zostanie odebrana następująca odpowiedź:
    354 Wyślij dane. Zakończ znakiem CRLF.CRLF
  6. Teraz można rozpocząć wpisywanie sekcji 822/2822 wiadomości. Jest to część wiadomości, którą użytkownik będzie widział w swojej skrzynce odbiorczej. Wpisz następujące polecenie, aby dodać wiersz tematu:
    Subject: wiadomość testowa
    Naciśnij dwa razy klawisz ENTER. Nie otrzymasz odpowiedzi dotyczącej tego polecenia.

    Uwaga: Dwa polecenia ENTER służą do zachowania zgodności z poleceniami żądania komentarzy (Request for Comments, RFC) 822 i 2822. 822, po których musi występować pusty wiersz.
  7. Wpisz następujące polecenie, aby dodać treść wiadomości:
    To jest wiadomość testowa i nie otrzymasz odpowiedzi dotyczącej tego polecenia.
  8. Wpisz kropkę (.) w następnym pustym wierszu, a następnie naciśnij klawisz ENTER. Zostanie odebrana następująca odpowiedź:
    250 OK
  9. Zamknij połączenie, wpisując następujące polecenie:
    QUIT
    Zostanie odebrana następująca odpowiedź:
    221 Zamykanie połączenia
  10. Sprawdź, czy adresat odebrał wysłaną wiadomość. Jeśli w dzienniku zdarzeń aplikacji zostaną zarejestrowane komunikaty o błędach lub jeśli wystąpią problemy z odebraniem wiadomości, sprawdź konfigurację hosta lub komunikację z nim.

Testowanie zaawansowane

Oprócz opisanych w tym artykule kroków testowania podstawowego można użyć potwierdzenia dostarczenia w celu przetestowania działania poczty e-mail w obu kierunkach. Tej metody można użyć, aby sprawdzić, czy serwer SMTP może akceptować połączenie przychodzące i generować potwierdzenie dostarczenia odsyłane nadawcy w celu sprawdzenia łączności wychodzącej serwera SMTP.

Aby zażądać potwierdzenia dostarczenia wiadomości testowej, przejdź do kroku 4 w sekcji Testowanie podstawowe w celu upewnienia się, że podano prawidłowy adres e-mail, który umożliwia odebranie potwierdzenia dostarczenia. Następnie w kroku 5 sekcji Testowanie podstawowe tego artykułu wpisz następujące polecenie w sesji usługi Telnet:
RCPT TO:Użytkownik@witryna.domena.com notify=success,failure

Właściwości

Numer ID artykułu: 153119 - Ostatnia weryfikacja: 4 grudnia 2007 - Weryfikacja: 6.5
Informacje zawarte w tym artykule dotyczą:
  • 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
  • Internetowe usługi informacyjne Microsoft 6.0
  • Internetowe usługi informacyjne Microsoft 5.0
  • Microsoft Internet Information Server 4.0
Słowa kluczowe: 
kbhowto KB153119

Przekaż opinię

 

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