tomcat如何查看开放的所有服务端口?
8443是tomcat打开SSL的文本服务的默认端口,8443端口在访问时需要加端口号,相当于http的8080。不可通过域名直接访问,需要加上端口号测试某个端口是否打开的详细步骤:
1、以192192193211这个IP的tcp22端口为例,检测端口开启状态。方法为:运行telnet19219219321122,下图即为tcp22端口开启状态。
2、下图即为tcp22端口关闭状态。
3、方法二,可以运用命令nc(netcat)来查看端口开启状态。方法为:运行nc-z19219219321122,打开即可:
4、下图即为tcp22端口关闭状态:
6、还可以用此方法一次性查看多个端口,例如:
1、网络连接问题:计算机与其他计算机之间的网络连接不畅,会导致访问Tomcat静态文件时速度较慢。检查网络连接,例如通过ping命令测试与其他计算机的通信是否正常。
2、DNS解析问题:计算机需要通过DNS解析来访问Tomcat服务器的IP地址,会导致访问速度较慢。将Tomcat服务器的IP地址添加到本地hosts文件中,以减少DNS查询的时间。
3、Tomcat配置问题:Tomcat的配置会影响静态文件的访问速度。修改Tomcat的conf/serverxml文件,调整有关HTTP连接的配置参数。
这个倒是没有碰到过哦我的一般是手机开热点用电脑连,那样是可以连也可以访问的
刚才特意按你说的试了一下,手机连电脑开的热点,然后打开同样的tomcat网页,也是可以的
我用的是tomcat 60 用ecplise开了一个web服务器,发布后用 本机的ip地址都可能访问到,手机输入同样的网址也可以
比如: http://1921681108:8080/shuqi/txtfiles/bmsjtxt
前面的ip地址是用 cmd>ipconfig 查出来的 shuqi 是工程名txtfiles 是文件夹名,bmsjtxt是 电子书文件名
java代码获取tomcat的服务器绝对路径,如下方法:
SystemgetProperty("catalinahome")
能够帮你准确的定位到tomcat绝对路径。注意在在windows和inux中路径分隔符不一样,在window是\,在inux中是/
tomcat服务器是一款开源的服务器由Apache组织负责维护,今天小编为大家分享下如何查看tomcat服务器是否配置成功。
tomcat服务器依赖于Java环境,所以我们要先查看是否配置JAVA_HOME,进入环境变量。
配置成功,搜索下载tomcat压缩文件建议下载60版本,比较稳定
下载成功,右键点击选择解压,注意解压目录不能有中文。
解压成功,定位到解压目录bin文件夹下,找到 startupbat文件,双击打开
双击打开出现下图表明tomcat服务器已经启动成功
上面窗口不要关闭,打开浏览器输入 本地回环地址 点击回车当出现下图图案,表明已经启动配置成功
输入回环地址出现下图表示启动没有成功,一般的由于以下原因造成; 1;没有配置java_home 2;startupbat文件没有打开
127001是保留IP,无论你的外部IP是什么系统都保留这Ip识别,
0000应该是做为动态IP用,因为我发现上网后它会被外部ip替换
INADDR_ANY就是指定地址为0000的地址,这个地址事实上表示不确定地址,或“所有地址”、“任意地址”。 一般来说,在各个系统中均定义成为0值。
例如MontiVista Linux中在/usr/include/netinet/inh定义为:
/ Address to accept any incoming messages /
#define INADDR_ANY ((in_addr_t) 0x00000000)
一般情况下,如果你要建立网络服务器应用程序,则你要通知服务器操作系统:请在某地址 xxxxxxxxxxxx上的某端口 yyyy上进行侦听,并且把侦听到的数据包发送给我。这个过程,你是通过bind()系统调用完成的。——也就是说,你的程序要绑定服务器的某地址,或者说:把服务器的某地址上的某端口占为已用。服务器操作系统可以给你这个指定的地址,也可以不给你。
如果你的服务器有多个网卡(每个网卡上有不同的IP地址),而你的服务(不管是在udp端口上侦听,还是在tcp端口上侦听),出于某种原因:可能是你的服务器操作系统可能随时增减IP地址,也有可能是为了省去确定服务器上有什么网络端口(网卡)的麻烦 —— 可以要在调用bind()的时候,告诉操作系统:“我需要在 yyyy 端口上侦听,所以发送到服务器的这个端口,不管是哪个网卡/哪个IP地址接收到的数据,都是我处理的。”这时候,服务器程序则在0000这个地址上进行侦听。例如:
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
PS
-----------------------------------------------------------------------------
在IP层中有一个路由表:
在MSDOS窗口可以运行命令:netstat -r
来显示路由表。根据路由表的条目从指定的网卡发送数据。
ARP缓存用:arp -a
来显示。
通常以太网帧的目的MAC地址,是下一跳的MAC地址。
0条评论