【发布时间】:2015-06-03 05:29:22
【问题描述】:
我想在我的应用程序中使用低端口(Spring web + Tomcat7 上的 SNMP 陷阱接收器)。正如我在此线程Binding Low Port to Java Program on Ubuntu Server 中所说,之前,我收到错误权限被拒绝。然后我将tomcat7用户组更改为root。但在那之后,我得到了 java.net.BindException: Cannot assign requested address 错误。对于我尝试的每个端口(低端口或高端口),我总是收到此错误。
我检查端口是否已使用,我看到端口仍然空闲。 我检查了我的 /etc/host 内容,是这样的:
127.0.0.1 localhost
127.0.1.1 test-server
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
124.81.xx.x test-server.com
注意:我的操作系统是 ubuntu 服务器
【问题讨论】:
-
你绑定的是什么{address:port}?
address是 localhost 的本地 IP 地址吗? -
是的,本地主机的ip地址(124.81.xx.xx:162)
-
但它是主机的本地 IP 地址,还是通过路由器/防火墙和端口转发的公共地址?不能绑定后者,只能绑定前者。
-
哦,ip地址是公网ip。我的服务器只有一个 ip,而当我尝试在 localhost ip (127.0.0.1:162) 上绑定/侦听时,陷阱无法捕获。我该如何解决这个问题。仅供参考,我不是网络管理员
标签: java tomcat7 ubuntu-12.04 snmp