A Detailed Look at SMTP Commands


The following SMTP commands as well as the sequence the commands are used in is how it is used in the transferring of email. This will enable you to enter SMTP commands manually if you ever need to:

HELO – sendinghostname – this command is used for initiating a SMTP conversation. A host that connects to a remote SMTP server will identify itself with the qualified DNS host name.

MAIL From – – is how and email is started and the email address appears in the FROM field of messages.

RCPT To – the email recipient is identified here and may be repeated several times in order to deliver to several recipients.


SIZE = numberofbytes – this command informs the remote server the size of attached message.

DATA – when this command appears it signifies that an email body is following and this data stream is terminated by "." On its own line.

QUIT – a SMTP connection is terminated by this command. Starting a new email simply requires a new MAIL command.

VRFY username – when this command is used it requests verification from the receiving SMTP server that their email username is valid. It is possible to turn OFF this command, but leaves for security holes in your line. It will for the use of login names on systems when used.

EXPN aliasname – is similar to VRFY, but when a distribution list is used all the users are listed.

Subject: – Cc: – Reply-To: – An email header line is not specifically a SMTP command. They are part of DATA streaming and they appear each on their own line.

When you want to do a SMTP command line test, you can follow the following SMTP commands to determine if you have a broken line and where:

Call your domain for example: mydomain.com and the receiving domain: hisdomain.com

Next you determine the receiving sever you are sending to.

Open CMD prompt,
Type in NSLOOKUP > SET q=mx > hisdomain.com,
Response: Non-authoritative answer; hisdomain.com MX preference =50
Mail exchanger = mail.hisdomain.com

Connecting to the receiver' mail server.

SMTP uses port 25 for communication and we use TELNET connecting to the mail server we named: mail.hisdomain.com,


You will see a response looking like this: 220 mx.google.com ESMTP 6si6253627yxg.6

Take note that different servers have different greetings, but you will receive some kind of response. When nothing appears, it means two different scenarios; either their server is unresponsive or your port is blocked at your firewall.


You can leave a response, or trackback from your own site.

Leave a Reply

Visit Us On FacebookVisit Us On TwitterVisit Us On Google PlusVisit Us On PinterestVisit Us On Youtube