jsp中怎么获得服务器ip和服务端口,在线等

jsp中怎么获得服务器ip和服务端口,在线等,第1张

/ 构造函数 / privateInternetProtocol(){ } / 获取客户端IP地址<br> 支持多级反向代理 @paramrequest >

2 获得IP地址代码

 InetAddress hostAndIP = null;

    try {

             hostAndIP = InetAddressgetLocalHost();

     } catch (UnknownHostException e) {

            eprintStackTrace();

     }

     String ip = hostAndIPtoString();

3 获得mac地址的方法, 接上

  byte[] mac = new byte[0];

        try {

            InetAddress hostAndIP = hostAndIPgetLocalHost();

            mac = NetworkInterfacegetByInetAddress(hostAndIP)getHardwareAddress();

        } catch (SocketException e) {

        } catch (UnknownHostException e) {

        }

        StringBuffer buffer = new StringBuffer("");

        for (int i = 0; i < maclength; i++) {

            if (i != 0) {

                bufferappend("-");

            }

            //字节转换为整数

            int temp = mac[i] & 0xff;

            String str = IntegertoHexString(temp);

            if (strlength() == 1) {

                bufferappend("0" + str);

            } else {

                bufferappend(str);

            }

        }

        String mac= buffertoString();

这种是直接把代码写在页面上,建议封装一个工具类直接在页面上导入后调用方法获得IP和MAC,或者写成自定义标签

1、如果服务器如果没有采用反向代理,而且客户端没有用正向代理的话,那么可以获取客户端的真实IP地址requestgetRemoteAddr()

2、如果服务器如果没有采用反向代理,而且客户端有用正向代理的话,那么通过requestgetRemoteAddr()获取客户端的IP地址是客户端 的代理服务器的地址,并不是客户端的真实地址,

3、如果客户端使用的是多层代理的话,服务器获得的客户端地址是客户端的最外围代理服务器的地址如果服务器如果采用反向代理服务器,不管客户端采用的是何种方式访问服务器。

//获得客户端真实IP地址的方法一:

public String getRemortIP(>

<servlet>

<servlet-name>NtscServerStart</servlet-name>

<servlet-class></servlet-class>

<init-param>

<param-name>ip</param-name>

<param-value>19216811</param-value>

</init-param>

<init-param>

<param-name>port</param-name> //端口号

<param-value>8080</param-value>

</init-param>

</servlet>

<servlet-mapping> <servlet-name>NtscServerStart</servlet-name> <url-pattern>/NtscServerStart</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file>indexjsp</welcome-file> </welcome-file-list>

每个人有每个人的回答,先说下我对这道题的答案:

浏览器会访问DNS服务器将输入的域名对应的IP获取到

浏览通过>

问题引出:

<hr/>

在JSP里,获取客户端的IP地址的方法是:requestgetRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了 Apache,Nagix等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,用 requestgetRemoteAddr()方法获取的IP地址是:127001或 1921681110,而并不是客户端的真实IP。

经过代理以后,由于在客户端和服务之间增加了中间层,因此服务器无法直接拿到客户端的 IP,服务器端应用也无法直接通过转发请求的地址返回给客户端。但是在转发请求的>

以上就是关于jsp中怎么获得服务器ip和服务端口,在线等全部的内容,包括:jsp中怎么获得服务器ip和服务端口,在线等、怎样用JSP获取当前用户的网卡IP和MAC地址、java如何获取用户真实的ip等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9459906.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存