当前位置:首页 » 云服务器 » tomcat的服务器ip

tomcat的服务器ip

发布时间: 2024-09-14 05:58:39

Ⅰ tomcat中localhost:8080界面,怎么查看自己ip地址

你的环境是windows还是linux,windows打开自己的网络管理中心,查看网络适配器,如果是linux,就用命令,ifconfig -a 查看IP地址。

Ⅱ 请问为什么下面看到的tomcat地址是0.0.0.0:8080

127.0.0.1是保留IP,无论你的外部IP是什么系统都保留这Ip识别,
0.0.0.0应该是做为动态IP用,因为我发现上网后它会被外部ip替换

INADDR_ANY就是指定地址为0.0.0.0的地址,这个地址事实上表示不确定地址,或“所有地址”、“任意地址”。 一般来说,在各个系统中均定义成为0值。

例如MontiVista Linux中在/usr/include/netinet/in.h定义为:

/* Address to accept any incoming messages. */

#define INADDR_ANY ((in_addr_t) 0x00000000)

一般情况下,如果你要建立网络服务器应用程序,则你要通知服务器操作系统:请在某地址 xxx.xxx.xxx.xxx上的某端口 yyyy上进行侦听,并且把侦听到的数据包发送给我。这个过程,你是通过bind()系统调用完成的。——也就是说,你的程序要绑定服务器的某地址,或者说:把服务器的某地址上的某端口占为已用。服务器操作系统可以给你这个指定的地址,也可以不给你。

如果你的服务器有多个网卡(每个网卡上有不同的IP地址),而你的服务(不管是在udp端口上侦听,还是在tcp端口上侦听),出于某种原因:可能是你的服务器操作系统可能随时增减IP地址,也有可能是为了省去确定服务器上有什么网络端口(网卡)的麻烦 —— 可以要在调用bind()的时候,告诉操作系统:“我需要在 yyyy 端口上侦听,所以发送到服务器的这个端口,不管是哪个网卡/哪个IP地址接收到的数据,都是我处理的。”这时候,服务器程序则在0.0.0.0这个地址上进行侦听。例如:

Proto Recv-Q Send-Q Local Address Foreign Address (state)

……

udp4 0 0 *.7913 *.*

udp4 0 0 *.7911 *.*

tcp4 0 0 *.ftp *.* LISTEN

……

……

以上这些是网络侦听的情况,其中Local Address 为 “*.ftp”、“*.7911”等,代表了服务程序绑定了服务器的所有网卡。

好了,你明白了侦听INADDR_ANY是什么意思了,那么,我的服务器有N个IP地址,会不会收到重复的数据包?收到数据包后,是不是会重复回复客户端呢?

答案是:不会收到重复的数据包,也不会重复发送数据。

为什么呢?因为路由的关系,从客户端来的IP包只可能到达其中一个网卡。同时在服务器进程发送数据时,操作系统根据自身维护着的路由表,决定IP数据包应该c从哪一个outbound的gateway向目标端发送。根据gateway选择的不同,也就决定了从哪一个网卡/哪个IP地址发送。

为什么不会接收到重复的数据包呢?

答:因为客户端只向你的服务器上的唯一一个IP地址发送数据了。

为什么不会重复发送数据包呢?

答:因为发送数据包的路由(路径)是唯一的。如果服务器不知道在发送数据的时候应该向哪个地址发送数据,那么数据就会被发送到“默认网关”上。

如何选择发送数据的路径呢?

答:依照路由表的要求发送。

如果路由表的记录有重复/有冲突呢,这时候如何选择路径呢?

答:路由表记录有优先级别。一般来说,Windows操作系统的路由表记录,如果是重复的话,以后来加入的记录为准,而某些操作系统,象linux/FreeBSD是不允许加入重复的路由表记录的;

如果是专用的路由器,有路由选择算法,一般来说,到达网络上的某一点的路径是可以有很多条的。路由选择算法可以确定“最好的一条路径”,这条路径要么是延时最小的,要么是通讯费用最低的,要么是带宽最高的,要么是跳点最小的——究竟是如何选择,就看路由器的管理员如何配置了。

对于客户端如果绑定INADDR_ANY,情况类似。对于TCP而言,在connect()系统调用时将其绑顶到一具体的IP地址。选择的依据是该地址所在子网到目标地址是可达的(reachable). 这时通过getsockname()系统调用就能得知具体使用哪一个地址。对于UDP而言, 情况比较特殊。即使使用connect()系统调用也不会绑定到一具体地址。这是因为对UDP使用connect()并不会真正向目标地址发送任何建立连接的数据,也不会验证到目标地址的可达性。它只是将目标地址的信息记录在内部的socket数据结构之中,共以后使用。只有当调用sendto()/send()时,由系统内核根据路由表决定由哪一个地址(网卡)发送UDP packet.

P.S.

-----------------------------------------------------------------------------

在IP层中有一个路由表:

在MSDOS窗口可以运行命令:netstat -r

来显示路由表。根据路由表的条目从指定的网卡发送数据。

ARP缓存用:arp -a

来显示。

通常以太网帧的目的MAC地址,是下一跳的MAC地址。

Ⅲ 怎么用Tomcat实现IP限制访问

  1. Tomcat供了两个参数供配置:RemoteHostValve 和RemoteAddrValve,前者用于限制主机名,后者用于限制IP地址。通过配置这两个参数,可以过滤来自请求的主机或IP地址,并允许或拒绝哪些主机/IP。

  2. 全局设置,对Tomcat下所有应用生效:
    server.xml中添加下面一行,重启服务器即可:
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.*" deny=""/>
    此行放在</Host>之前。

  3. 例:
    1,只允许192.168.1.10访问:
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.10" deny=""/>
    2,只允许192.168.1.*网段访问:
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.*" deny=""/>
    3,只允许192.168.1.10、192.168.1.30访问:
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.10,192.168.1.30" deny=""/>
    4,根据主机名进行限制:
    <Valve className="org.apache.catalina.valves.RemoteHostValve" allow="abc.com" deny=""/>

  4. 局部设置,仅对具体的应用生效,根据项目配置情况进行设置:
    1)使用conf目录下xml文件进行配置${tomcat_root}confproj_1.xml
    2)直接在server.xml中进行设置${tomcat_root}confserver.xml
    在上述文件对应项目的</Context>前增加下面一行:
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.*" deny=""/>

  5. 特别需求:测试版本不想提供别人访问,打开tomcat6confserver.xml文件,如果是要限制整个站点别人不能访问,则要将
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.1.*,192.168.2.*,*.mysite.com" deny=""/>
    加入到<HOST></HOST>标签中,如果是要限制某个站点不能被访问,则要加入到<Context>里面就可以。
    <Context path="/myweb" reloadable="true" docBase="E: omcat6webappsmyweb">
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.13.110,192.168.1.*,220.250.13.21" deny=""/>
    < /Context>
    RemoteHostValve

  6. 根据主机名进行限制:

    <Valve className="org.apache.catalina.valves.RemoteHostValve" allow="tmachine1" deny=""/>
    修改文件:
    tomcat/conf/server.xml
    通过tomcat限制ip访问。

热点内容
白加黑源码 发布:2024-11-25 23:48:25 浏览:388
上传的壁纸 发布:2024-11-25 23:47:47 浏览:569
如何删除缓存的视频 发布:2024-11-25 23:44:54 浏览:435
编写刷课脚本 发布:2024-11-25 23:43:20 浏览:869
php图片缓存 发布:2024-11-25 23:41:36 浏览:953
android获取sd卡文件 发布:2024-11-25 23:39:34 浏览:151
银线存储 发布:2024-11-25 23:37:44 浏览:624
教孩子学编程python 发布:2024-11-25 23:31:05 浏览:912
如何开启服务器端口8008 发布:2024-11-25 23:30:27 浏览:806
python字典中文key 发布:2024-11-25 23:30:11 浏览:997