端口用来指示计算机上的一个具体的进程,例如一栋楼就是相当于一个ip地址,而楼里面具体的每一户人的门牌号就相当于端口号,
- 不同的进程又不同的端口号,用来区分软件!
- 被规定0~65536个
- 被分为TCP端口和UDP端口,每一个都有65536个,
(TCP协议下用了80端口,UDP协议下也可以使用80端口,不同协议下可以使用相同端口号,但TCP协议下一个进程使用了80端口,TCP协议下的其他进程就不能使用80端口了,单一协议下,端口号不能冲突)
- 端口分类:
- 公有端口0~1023
HTTP :80
HTTPS : 443
FTP : 21
Telent :23
- 程序注册端口 :1024 ~49151 ,分配给用户或者程序
Tomcat:8080
MySQL :3306
Oracle : 1521
- 动态,私有的(尽量不要用):49152~65535
netstat -ano //查看本机所有的端口号
netstat -ano|findstr " 8080" #查找具体端口 查看8080的端口
tasklist|findstr "8696" #查看指定端口号8696的进程
Ctrl+Shift+Esc 打开任务管理器
1.1 获取IP地址及端口号
import java.net.InetSocketAddress;
/**
* 创建一个获取ip地址和port端口的测试类
*/
public class TestInetSocketAddress {
//psvm + tab键快捷生成
public static void main(String[] args) {
//在InetSocketAddress()括号中传入具体的ip地址和port端口
InetSocketAddress inetSocketAddress = new InetSocketAddress("127.0.0.1",8080);
//打印输出ip地址和端口号
System.out.println(inetSocketAddress);
//打印输出ip地址
System.out.println(inetSocketAddress.getAddress());
//
System.out.println(inetSocketAddress.getHostName());
//打印输出端口号
System.out.println(inetSocketAddress.getPort());
}
}
控制台打印输出为:
/127.0.0.1:8080
/127.0.0.1
activate.navicat.com
8080