启动tomcat时,JDBC连接不上mysql服务器

我这机器有点怪.也不知道是什么原因.用jdbc去连mysql服务器的时候反正在以下三种情形会有三种结果:

a:如果我这台机器不让他接上路由器或局域网,提示:
01:04:00,453 WARN SettingsFactory:109 - Could not obtain connection metadata
com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
** BEGIN NESTED EXCEPTION **
java.net.SocketException
MESSAGE: java.net.NoRouteToHostException: No route to host: connect

b:如果我这台机器接上局域网,提示:(之前我用的另一家公司提供的宽带服务,机器接上网络后jdbc能正常连接服务器.)
23:59:28,921 WARN SettingsFactory:109 - Could not obtain connection metadata
com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
** BEGIN NESTED EXCEPTION **
java.net.SocketException
MESSAGE: java.net.ConnectException: Connection timed out: connect

c:如果我这台机器接上我自己弄的一个猫(电开着),则能够正常连上服务器(我这个猫没有接宽带)

我现在想要的结果是在各种情况下我本机的应用都可通过jdbc提供的驱动去访问mysql服务器.还期望各位提供一个好的解决方案.

还有就是我把防火墙也关了.对a,b两种情况不起作用.
[b]问题补充:[/b]
纳闷了.我现在接上局域网后通过jdbc就是不能连接mysql服务器,但我试了下如果我把网线接在我这没连网的猫上,通过jdbc就是能连上mysql服务器
[b]问题补充:[/b]
会不会是网络配置方面的问题呢.如果是该怎么解决.纳闷的很

估计是连接数已经达到服务器允许的最多连接数
如果用的是DBCP,很容易出现这种情况,
建议:检查配置是否正确,或换成c3p0试试

有这么奇怪?不过可以肯定问题出在mysql

参照LZ的描述,个人觉得网络设置的嫌疑最大.可通过路由跟踪命令,查看一下本机到Mysql服务器的路由情况.1,2种情况和3的差别在于是否走了路由器.通过信息对比分析应该会有一个答案.
跟踪路由命令:
A:tracert pop.pcpop.com
B:pathping pop.pcpop.com 除了显示路由外,还提供325S的分析,计算丢失包的%
如果这两个命令不够用,请自行Google一把.尽提供思路,操作不详.望有用.