如何从TCP连接获取的域名?
因为我正在尝试制作一个代理类型的软件,但它必须检测到域是什么,然后去它需要的地方。然而,我不确定如何从客户端获取域名。
发布于 2015-05-26 03:16:10
没有从TCP连接中获取目标域或主机名的通用方法,因为连接仅由其目标IP地址定义,而不是由主机名定义,并且单个目标IP地址可能有多个名称。但是,虽然没有从所有TCP连接中获取目标名称的通用方法,但使用HTTP之上的一些协议是可能的:
对于HTTP,您可以查看HTTP Host header,它包含目标主机名,并由几乎所有的堆栈设置(对于SSL,您可以尝试从
发布于 2015-05-26 03:22:32
您可以使用以下代码片段,它将提供本地域名-
try {
InetAddress me = InetAddress.getLocalHost();
String dottedQuad = me.getHostAddress();
System.out.println("My address is " + dottedQuad);
} catch (UnknownHostException e) {
System.out.println("I'm sorry. I don't know my own address.");
}https://stackoverflow.com/questions/30444583
复制相似问题