tags:

views:

1307

answers:

6

What is the best tool for checking if my ISP blocks port 25?

+5  A: 

Hi, have a look:

http://www.canyouseeme.org/

Bruno
Correct answer if the questioner meant "blocked inbound". Although failure doesn't *necessarily* mean your ISP is blocking it, it could be your own firewall.
Steve Jessop
+1  A: 

telnet host 25

Just select a host that you know is listening on port 25.

Darron
Correct answer if the questioner meant "blocked outbound".
Steve Jessop
+1  A: 

You could call them and ask.

Karl
Dunno. My ISP is a paid service provider, and should be truthful about it, don't you think?
Karl
They may have to be honest, but they aren't legally required to be well-informed.
Steve Jessop
+3  A: 

cmd> telnet 25

to determine which exactly host (subdomain) is listening port 25: nslookup -q=MX

For example: cmd> nslookup -q=MX gmail.com

gmail.com MX preference = 50, mail exchanger = gsmtp147.google.com gmail.com MX preference = 50, mail exchanger = gsmtp183.google.com gmail.com MX preference = 5, mail exchanger = gmail-smtp-in.l.google.com gmail.com MX preference = 10, mail exchanger = alt1.gmail-smtp-in.l.google.com gmail.com MX preference = 10, mail exchanger = alt2.gmail-smtp-in.l.google.com

gsmtp147.google.com internet address = 209.85.147.27 gsmtp183.google.com internet address = 64.233.183.27 gmail-smtp-in.l.google.com internet address = 64.233.183.114

cmd> telnet gsmtp147.google.com 25 220 mx.google.com ESMTP l27si12759488waf.25

On linux, you can 'dig', I guess

abatishchev
+1  A: 

Probing a server that listens on your desired port is of course the best option, as abatishchev has shown.

In the case where you can't find an "echo" service on your desired port or you want to know who is blocking you on the path you can resort to firewalking. Firewalking probes the path by starting with a Time-To-Live (TTL) set to zero and then icrementing it by one each iteration. When you stop getting "ICMP TTL Exceeded" messages that means the next hop in the chain is filtering your packets.

You can use hping3 to do this:

:~$ hping3 -z -T -p 25 server.com

or use Firewalk which was created for exactly this.

Edit: Any NAT devices on the route will silently destroy your results since the TTL is reset to whatever sane value the router sees fit.

joveha
A: 

If you change port to 465 is it reliable?