centos6.2关于tomcat远程不能访问的问题处理过程
问题:局域网内配置好tocmat,服务器本机访问http://ip:8080成功,但远程访问http://ip:8080失败,下面是一步步排查过程:
1 tomcat禁用IPv6
关闭网卡IPV6协议
#netstat –anp |grep 8080 //是jsvc程序和tomcat用户在用,且端口在监听状态
#lsof –i:8080 //发现type=IPV6,很奇怪怎么是IPV6监听8080端口
#netstat –tpl //查看端口监听协议
原因是Tomcat在启动的时候,如果检测到系统支持IPV6,默认监听的是IPV6的端口,导致通过IPV4无法访问。使用address=“0.0.0.0”的意思是监听IPV4协议栈下的任何端口。IPV4协议监听任何地址应配置:0.0.0.0。IPV6协议监听任何地址应配置:0:0:0:0:0:0:0:0。
从系统层面关闭IPV6,觉得影响太大,于是先从tomcat应用层面关闭IPV6:
方法一:tomcat目录下配置 bin/Catalina.sh
最后增加:
JAVA_OPTS="$JAVA_OPTS
-Djava.net.preferIPv4Stack=true
-Djava.net.preferIPv4Addresses=true "
无效
方法二:tomcat目录下配置conf/server.xml
#netstat -an | grep 8080 //还是ipv6在监听
在端口8080标签内增加address=”0.0.0.0”
无效
2 系统网卡禁用IPv6
从系统层面直接关闭网卡的IPv6协议。
方法一:
#vi /etc/sysconfig/network
增加:NETWORKING_IPV6=no
#service network restart //重启网络
#lsmod |grep ipv6 //仍存在
无效
方法二:
在/etc/modprobe.d/dist.conf结尾添加
alias net-pf-10 off
alias ipv6 off
重启机子
#lsof –i:8080 //type为ipv4了
可是关闭了ipv6关闭了防火墙还是无法远程访问tomcat,崩溃中。。。
3 防火墙配置
增加8080端口到防火墙配置中,执行以下操作:
# vi /etc/sysconfig/iptables
增加以下代码:
-A RH-Firewall-1-INPUT -m state --state NEW -mtcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp--dport 8080 -j ACCEPT
-A INPUT –p tcp –m tcp --dport 8080 –j ACCEPT
//重启防火墙
# service iptables restart
#/etc/init.d/iptables status //查看防火墙状态,已配置8080端口
远程访问依旧失败,究竟原因是什么呢?即使关闭本机防火墙也没办法,各种折腾,已崩溃,耗时一天。
4 局域网限制端口
目前的状态是关闭防火墙关闭IPV6,在本机访问tocmat正常,但在局域网无法远程访问。综合分析,可能是局域网服务器区的防火墙对端口作限制,通过telnet也无法返回,最后确认是这个问题。申请局域网防火墙开放服务器的tomcat端口。
从上述一个解决问题过程中,确实发现centos部署tomcat需要关注的两点,一个是tomcat默认绑定了IPv6监听端口;另一个是服务器本机防火墙iptables需要启用8080端口。
centos6.2关于tomcat远程不能访问的问题处理过程相关推荐
- Spring Boot项目部署服务器 本地正常 远程无法访问问题排错
Spring boot项目部署linux 服务器本地正常 远程无法访问 问题描述 排错 原因 最后 最近买个云主机学大佬部署项目..然后直接炸裂了... 问题描述 本地保证代码没问题的情况下( jav ...
- Eclipse+Maven+Nexus+Tomcat远程搭建CentOS web server
Eclipse+Maven+Nexus+Tomcat远程搭建CentOS web server 工具的使用,参考了很多前辈的资料,虽然不是转载但也算不上原创,仅供自己和大家参考罢了. 笔者的本意是要在 ...
- 如何将web项目部署到远程桌面,通过远程地址访问web项目
如何将web项目部署到远程桌面,通过远程地址访问web项目 进入公司会经常让你把某个项目或者一些展示数据的html文件放到远程服务器上,可供大家一起访问查看,看了网上的一些办法大部分都是nginx,t ...
- MySQL远程表访问设置
MySQL远程表访问设置 本博文转载自 http://blog.itpub.net/9406448/viewspace-223946 ---- 官网上的信息 使用MySQL FEDE ...
- 以远程桌面访问Windows Azure虚拟机(转+译)
公告 :本博客为微软云计算中文博客 的镜像博客. 部分文章因为博客兼容性问题 ,会影响阅读体验 .如遇此情况,请访问 原博客 . 本周Windows Azure Team发布了 ...
- jconsole_我的Wiki:使用JConsole对WildFly(或JBoss AS7)进行远程JMX访问
jconsole 与以前的版本相比,JBoss AS7的目标之一是使其在默认情况下更加安全. 受此目标直接影响的领域之一是,您不再期望服务器在端口上公开某些服务并无需任何身份验证/授权就可以访问它. ...
- 服务器读取本地文件,java远程服务器访问本地文件
java远程服务器访问本地文件 内容精选 换一换 云服务器网络异常.防火墙未放行本地远程桌面端口.云服务器CPU负载过高等场景均可能导致云服务器无法正常登录.本节操作介绍无法登录Linux弹性云服务器 ...
- jconsole 使用_我的Wiki:使用JConsole对WildFly(或JBoss AS7)进行远程JMX访问
jconsole 使用 与以前的版本相比,JBoss AS7的目标之一是使其在默认情况下更加安全. 受此目标直接影响的领域之一是,您不再期望服务器在端口上公开某些服务,而无需任何身份验证/授权即可访问 ...
- 我的Wiki:使用JConsole对WildFly(或JBoss AS7)进行远程JMX访问
与以前的版本相比,JBoss AS7的目标之一是使其在默认情况下更加安全. 受此目标直接影响的领域之一是,您不再期望服务器在端口上公开某些服务,而无需任何身份验证/授权就可以访问它. 请记住,在以前的 ...
最新文章
- POJ-2513 Colored Sticks 字典树,欧拉回路
- Pod定义YAML文件详解
- slickgrid 中ajax,slickgrid.js 一种高性能web数据表格组件的探讨
- 2.11.1.移植前的准备工作
- python生成list的时候 可以用lamda也可以不用_python 可迭代对象,迭代器和生成器,lambda表达式...
- ambassador 学习七 Mapping说明
- docker(7):使用python 连接数据库,插入并查询数据--link
- 【ECJTU_ACM 11级队员2012年暑假训练赛(8) - F - A Mame】
- unittest 测试
- Pr 视频效果:图像控制、实用程序
- 二叉树非递归遍历(先序、中序、后序)(C++)
- 自动点击android按钮,Android实现自动点击无障碍服务功能的实例代码
- lintcode 983. 棒球游戏
- sd卡umount时busy解决方法
- flutter Image.network()网络图片加载失败,404错误的异常处理和解决方法初探
- 【模型开发】评分卡应用
- 浏览器的onload事件
- 中兴手机可以刷鸿蒙系统吗,中兴:今年无计划使用华为鸿蒙系统
- win7系统wifi没有网络连接到服务器,Win7无线Wifi无法连接怎么办?win7系统Wifi无法连接的三种故障原因及解决方法...
- 非递归的归并排序(详细解析)
热门文章
- 数据结构和算法分析:第四章 树
- mySQL双机冗余_MySQL双机热备实现原理
- 实现在Windows下安装Lighttpd的方法
- win2003 vps IIS6中添加站点并绑定域名的配置方法
- Logistic Regression逻辑回归
- iBatis 的插入一个实体
- VS2005新建应用工程出错解决方法
- WINCE6.0+S3C2443的启动过程---eboot4
- Eboot.bib中0x30000000到0x300020000内存的作用
- SSL协议(HTTPS) 握手、工作流程详解(双向HTTPS流程)