源端口和目的端口是要针对一个数据包来说的,如果没有数据包就没有所谓的源端口和目的端口。比如电脑A要发一个数据包给电脑B。那么对于B的路由器来说A所在的路由器的外网口就是源端口,而电脑B所连接的端口就是目的端口。如果B发给A就反过来了。端口是一个服务的通信接口。没有绝对的。比如telnet对应的是23端口,但是我可以改。比如我可以把telnet改成8080端口。这个由程序员开发程序时定义的。