Bind address already in use

Hello all,
I have a strange problem with TCP sokets.
on a SunOS5.9 Sparc machine i am running a server progam
which has the sequence,
socket()
bind()
listen()
connect().....
do lots of processing with the clients (around 28 clients)
close()
sleep(30)
server restart the above sequence
when restarting i get a bind error:
Address already in Use.
i have verifeid that the socket is close, return value of close is 0.
Is it possible that socket resources are not released by kernel?
Is tuning the value of tcp_time_wait_interval to a low value will help to get the code running.
Or is there any other tunbale parameter to be tuned out.
Please help me to resolve this.
Thanks.

Hello all,
I have a strange problem with TCP sokets.
on a SunOS5.9 Sparc machine i am running a server progam
which has the sequence,
socket()
bind()
listen()
connect().....
do lots of processing with the clients (around 28 clients)
close()
sleep(30)
server restart the above sequence
when restarting i get a bind error:
Address already in Use.
i have verifeid that the socket is close, return value of close is 0.
Is it possible that socket resources are not released by kernel?
Is tuning the value of tcp_time_wait_interval to a low value will help to get the code running.
Or is there any other tunbale parameter to be tuned out.
Please help me to resolve this.
Thanks.

Similar Messages

  • Ftp (GNU inetutils) 1.6 error : [ftp: bind: Address already in use]

    hi,
    recently I discovered that I cant connect to many ftp servers using the common command line ftp client from a 64bit archlinux box.
    I tried connecting from other PCs at the same network (iMac) and it works without problems, the error is general, shows with every ftp server I tried,
    the client connects and then freezes or returns an error (depending on the ftp server)
    ftp: bind: Address already in use
    I got no firewall or iptables rules, I installed ncftp with pacman and it works, so I assume it's a ftp (GNU) client error,
    thanks
    GL

    Hi,
    see
    http://forum.java.sun.com/thread.jsp?forum=136&thread=417946
    http://forum.java.sun.com/thread.jsp?forum=136&thread=430814
    -- markus.

  • PLEASE HELP. shell/tcp: bind: Address already in use

    Hi,
    I am getting theses messages every 10 minutes and I don't know why.
    Feb 17 03:17:21 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 03:17:21 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 03:27:22 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 03:27:22 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 03:37:22 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 03:37:23 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 03:47:24 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 03:47:24 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 03:57:26 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 03:57:26 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 04:07:26 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 04:07:26 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 04:17:27 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 04:17:27 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 04:27:29 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 04:27:29 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 04:37:30 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 04:37:30 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 04:47:30 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    The only strange thing that I see is that in /etc/inetd.conf
    there are theses lines:
    shell stream tcp nowait root /usr/sbin/in.rshd in.rshd
    shell stream tcp6 nowait root /usr/sbin/in.rshd in.rshd
    exec stream tcp nowait root /usr/sbin/in.rexecd in.rexecd
    exec stream tcp6 nowait root /usr/sbin/in.rexecd in.rexecd
    But I haven't enabled IPv6 on my system.
    I also have this message at random time:
    Feb 18 18:43:46 MONTSENY inetd[157]: [ID 268928 daemon.error] rusersd/rpc/datagram_v,circuit_v: could not get transport information
    Feb 18 18:43:46 MONTSENY inetd[157]: [ID 307641 daemon.error] rusersd/rpc/datagram_v,circuit_v: tli_socket: No such file or director
    There is only one instance of inetd running.
    I haven't installed any additional services. At the beginning things went ok I think that the problem started when I added an IP address to the second eth interface.
    The system is a Sun Netra T1.
    The system version is: Solaris 8.
    Please reply also to: [email protected]
    Thanks in advance.

    Hi,
    I am getting theses messages every 10 minutes and I don't know why.
    Feb 17 03:17:21 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 03:17:21 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 03:27:22 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 03:27:22 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 03:37:22 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 03:37:23 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 03:47:24 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 03:47:24 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 03:57:26 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 03:57:26 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 04:07:26 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 04:07:26 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 04:17:27 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 04:17:27 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 04:27:29 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 04:27:29 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 04:37:30 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    Feb 17 04:37:30 MONTSENY inetd[29012]: [ID 161378 daemon.error] shell/tcp: bind: Address already in use
    Feb 17 04:47:30 MONTSENY inetd[29012]: [ID 161378 daemon.error] exec/tcp: bind: Address already in use
    The only strange thing that I see is that in /etc/inetd.conf
    there are theses lines:
    shell stream tcp nowait root /usr/sbin/in.rshd in.rshd
    shell stream tcp6 nowait root /usr/sbin/in.rshd in.rshd
    exec stream tcp nowait root /usr/sbin/in.rexecd in.rexecd
    exec stream tcp6 nowait root /usr/sbin/in.rexecd in.rexecd
    But I haven't enabled IPv6 on my system.
    I also have this message at random time:
    Feb 18 18:43:46 MONTSENY inetd[157]: [ID 268928 daemon.error] rusersd/rpc/datagram_v,circuit_v: could not get transport information
    Feb 18 18:43:46 MONTSENY inetd[157]: [ID 307641 daemon.error] rusersd/rpc/datagram_v,circuit_v: tli_socket: No such file or director
    There is only one instance of inetd running.
    I haven't installed any additional services. At the beginning things went ok I think that the problem started when I added an IP address to the second eth interface.
    The system is a Sun Netra T1.
    The system version is: Solaris 8.
    Please reply also to: [email protected]
    Thanks in advance.

  • ERROR: transport error 202: bind failed: Address already in use

    Hey guys,
    I created 2 WL 10.3 Domains. I can start the admin server in domain but when I start the second admin server i get the following error:
    starting weblogic with Java version:
    ERROR: transport error 202: bind failed: Address already in use
    ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
    JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../.
    ./../src/share/back/debugInit.c:690]
    FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_E
    RROR_TRANSPORT_INIT(197)
    Starting WLS with line:
    C:\bea\JDK160~1\bin\java -client -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket
    ,address=8453,server=y,suspend=n -Djava.compiler=NONE -Xms512m -Xmx512m -XX:Com
    pileThreshold=8000 -XX:PermSize=48m -XX:MaxPermSize=128m -XX:MaxPermSize=160m
    -Xverify:none -Xverify:none -da:org.apache.xmlbeans... -ea -da:com.bea... -da:
    javelin... -da:weblogic... -ea:com.bea.wli... -ea:com.bea.broker... -ea:com.bea.
    sbconsole... -Dplatform.home=C:\bea\WLSERV~1.3 -Dwls.home=C:\bea\WLSERV~1.3\serv
    er -Dweblogic.home=C:\bea\WLSERV~1.3\server -Dweblogic.management.discover=tru
    e -Dwlw.iterativeDev=true -Dwlw.testConsole=true -Dwlw.logErrorsToConsole=true
    -Dweblogic.ext.dirs=C:\bea\patch_wlw1030\profiles\default\sysext_manifest_classp
    ath;C:\bea\patch_wls1030\profiles\default\sysext_manifest_classpath;C:\bea\patch
    cie670\profiles\default\sysextmanifest_classpath;C:\bea\patch_alsb1031\profile
    s\default\sysext_manifest_classpath -Dweblogic.Name=TestAdmin2 -Djava.security.p
    olicy=C:\bea\WLSERV~1.3\server\lib\weblogic.policy weblogic.Server
    ERROR: transport error 202: bind failed: Address already in use
    ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
    JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../.
    ./../src/share/back/debugInit.c:690]
    FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_E
    RROR_TRANSPORT_INIT(197)
    Stopping PointBase server...
    I changed the port address of both admins but I dont' think that's the issue. Can someone tell me whats going on.
    Thanks

    Hi
    Iam getting the Same Error , Can you provide me some information on what changes did you made to the setDomainEnv.cmd file to make this work
    thanks in advance

  • Error starting ORMI-Server.  Unable to bind socket: Address already in use:

    hi,
    I run the folowing command "start_oc4j.bat" to start Oc4j.
    It starts successfully.
    Then I start "BPEL PM Server".
    I get the following error,
    "Error starting ORMI-Server. Unable to bind socket: Address already in use: JVM_Bind".
    I understand the above errror because both of them are trying to bind to the same port. And both of them are trying to start ORMI server. Can some one suggest how to get rid of this problem.
    I tried giving different port numbers for them, but that did not work. Let me know, how to over come this problem.
    with regards
    shaila

    You may have another OC4J running on your computer.
    You should change the port number in the file config/rmi.xml.

  • Address already in use: Cannot bind

    Hi all. I have a desktop app that sends commands and receives responses from a network appliance.
    All commands and responses work fine except one - trying to use RTPSocketPlayer on port 49154.
    The normal command and response UDP port is 49152. Streaming audio should come in on port 49154.
    I am closing and disconnecting the socket on 49152 after every command and response.
    But when I try to invoke the RTPSocketPlayer and bind port 49154 to my local IP, I get the
    Address already in use: Cannot bind error.
    Any suggestions? Thanks!
    waynew

    Ah OK, I get it. Change the InitSocket() method thus:
    sock = new DatagramSocket(null);
    sock.setReuseAddress(true);
    sock.bind(new InetSocketAddress(addr, sockPort));but also have a look at netstat -an to see who else is on that port and whether that's OK.

  • Ipv4 mapped addresses bind problem: address already in use.

    Hello. It's me again with another, may be newbie, question.
    This time I observe different behavior binding different type of ip addresses on tcp sockets. For instance
    - when I bind ipv4 mapped addresses, if there is a remaining old socket in TIME_WAIT state from a previous run
    I get the error 'Address already in use', event with SO_REUSEADDR set.
    - when I bind another type of ipv6 or just ipv4 addresses. if there if a remaining old socket in TIME_WAIT state from
    a previous run, the bind is successful (SO_REUSEADDR is set).
    How can be explained this behavior?
    Thanks a lot.
    Details
    =======
    I made a small program to test this. This program:
    - dump the addresses to be used in bind() and connect()
    - creates a LISTEN SOCKET calling
    - socket(AF_INET6, SOCK_STREAM, 0)
    - fcntl(F_SETFD, fcntl(F_GETFD) | FD_CLOEXEC)
    - fcntl(F_SETFL, fcntl(F_GETFL) | O_NONBLOCK),
    - setsockopt(SO_REUSEADDR),
    - setsockopt(SO_KEEPALIVE),
    - setsockopt(TCP_NODELAY),
    - bind()
    - listen()
    - creates a CONNECTING SOCKET calling
    - socket(AF_INET6, SOCK_STREAM, 0)
    - fcntl(F_SETFD, fcntl(F_GETFD) | FD_CLOEXEC)
    - fcntl(F_SETFL, fcntl(F_GETFL) | O_NONBLOCK),
    - setsockopt(SO_REUSEADDR),
    - setsockopt(SO_KEEPALIVE),
    - setsockopt(TCP_NODELAY),
    - connect()
    - creates a ACCEPTED SOCKET calling
    - accept()
    - fcntl(F_SETFD, fcntl(F_GETFD) | FD_CLOEXEC)
    - fcntl(F_SETFL, fcntl(F_GETFL) | O_NONBLOCK),
    - setsockopt(SO_REUSEADDR),
    - setsockopt(SO_KEEPALIVE),
    - setsockopt(TCP_NODELAY),
    - issue a std::system( "netstat -an | grep 10329" )
    - wait with select() for a write event in the CONNECTING SOCKET
    - wait with select() for a write event in the ACCEPTED SOCKET
    - close the accepted socket
    - close the connecting socket
    - close the listen socket
    - issue another std::system( "netstat -an | grep 10329" )
    - exit(0)
    Note: please don't get confused with my notation of addresses, the last component, after the last colon, is the port.
    I run it with ipv4 mapped listen address, with this result:
    $ ./test_reuseaddr listen_address=0.0.0.0:10329 connect_address=127.0.0.1:10329
    Listener in *'::ffff:0.0.0.0:10329'*
    1a 00 28 59 00 00 00 00 00 00 00 00 00 00 00 00 |..(Y............|
    00 00 ff ff 00 00 00 00 00 00 00 00 00 00 00 00 |................|
    Connect to '::ffff:127.0.0.1:10329'
    1a 00 28 59 00 00 00 00 00 00 00 00 00 00 00 00 |..(Y............|
    00 00 ff ff 7f 00 00 01 00 00 00 00 00 00 00 00 |................|
    Creating listen socket
    Creating connecting socket
    Creating accepted socket
    netstat -an | grep 10329
    *.10329 *.* 0 0 49152 0 LISTEN
    127.0.0.1.35114 127.0.0.1.10329 49152 0 49152 0 ESTABLISHED
    127.0.0.1.10329 127.0.0.1.35114 49152 0 49152 0 ESTABLISHED
    Closing connecting socket
    Closing accepted socket
    Closing listen socket
    netstat -an | grep 10329
    *127.0.0.1.10329 127.0.0.1.35114 49152 0 49152 0 TIME_WAIT*
    Immediately run it again the same way, with this result (Address already in use):
    $ ./test_reuseaddr listen_address=0.0.0.0:10329 connect_address=127.0.0.1:10329
    Listener in *'::ffff:0.0.0.0:10329'*
    1a 00 28 59 00 00 00 00 00 00 00 00 00 00 00 00 |..(Y............|
    00 00 ff ff 00 00 00 00 00 00 00 00 00 00 00 00 |................|
    Connect to '::ffff:127.0.0.1:10329'
    1a 00 28 59 00 00 00 00 00 00 00 00 00 00 00 00 |..(Y............|
    00 00 ff ff 7f 00 00 01 00 00 00 00 00 00 00 00 |................|
    Creating listen socket
    *### SYSCALL ERROR: bind(): 125, Address already in use*
    Wait and verify that the TIME_WAIT socket has disappeared
    $ sleep 120
    $ netstat -an | grep 10329
    Now run the same program with normal ipv6 listen addresses
    $ ./test_reuseaddr listen_address=*::0*:10329 connect_address=127.0.0.1:10329
    Listener in *':::10329'*
    1a 00 28 59 00 00 00 00 00 00 00 00 00 00 00 00 |..(Y............|
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
    Connect to '::ffff:127.0.0.1:10329'
    1a 00 28 59 00 00 00 00 00 00 00 00 00 00 00 00 |..(Y............|
    00 00 ff ff 7f 00 00 01 00 00 00 00 00 00 00 00 |................|
    Creating listen socket
    Creating connecting socket
    Creating accepted socket
    netstat -an | grep 10329
    *.10329 *.* 0 0 49152 0 LISTEN
    127.0.0.1.35115 127.0.0.1.10329 49152 0 49152 0 ESTABLISHED
    127.0.0.1.10329 127.0.0.1.35115 49152 0 49152 0 ESTABLISHED
    *.10329 *.* 0 0 49152 0 LISTEN
    Closing connecting socket
    Closing accepted socket
    Closing listen socket
    netstat -an | grep 10329
    *127.0.0.1.10329 127.0.0.1.35115 49152 0 49152 0 TIME_WAIT*
    Immediately run it again the same way (no error this time)
    $ ./test_reuseaddr listen_address=*::0*:10329 connect_address=127.0.0.1:10329
    Listener in *':::10329'*
    1a 00 28 59 00 00 00 00 00 00 00 00 00 00 00 00 |..(Y............|
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
    Connect to '::ffff:127.0.0.1:10329'
    1a 00 28 59 00 00 00 00 00 00 00 00 00 00 00 00 |..(Y............|
    00 00 ff ff 7f 00 00 01 00 00 00 00 00 00 00 00 |................|
    Creating listen socket
    Creating connecting socket
    Creating accepted socket
    netstat -an | grep 10329
    127.0.0.1.10329 127.0.0.1.35115 49152 0 49152 0 TIME_WAIT
    *.10329 *.* 0 0 49152 0 LISTEN
    127.0.0.1.35116 127.0.0.1.10329 49152 0 49152 0 ESTABLISHED
    127.0.0.1.10329 127.0.0.1.35116 49152 0 49152 0 ESTABLISHED
    *.10329 *.* 0 0 49152 0 LISTEN
    Closing connecting socket
    Closing accepted socket
    Closing listen socket
    netstat -an | grep 10329
    *127.0.0.1.10329 127.0.0.1.35115 49152 0 49152 0 TIME_WAIT*
    *127.0.0.1.10329 127.0.0.1.35116 49152 0 49152 0 TIME_WAIT*
    Run it againg many times with no error.

    sunlover1984 wrote:
    Sorry, to use such short forms in forums as i dont know much about this. i rarly use java forum. well, i removed the code that i gave u for server starting. but still it is giving me the same error. this time i put it in a java bean file.(Hint "u" is just another short form).
    Did you try the suggestion to put a log statement just before you start the server? Or put a breakpoint at that line and see how often it is reached.
    Because the only reason for this problem is that something is already listening at that port.
    And if there's really nothing listening before you start you application, then only your application itself can listen there already, so the logical conclusion for me would be that you're starting the Server twice.

  • Unable to bind socket: Address already in use

    Hi,
    I get the following error whenever I start my Application Server on Linux machine.
    If I deploy the EJB application onto a OC4J instance, the server is refusing the connection by throwing Connection Refused error.
    Any insight about this issue will be helpful.
    Thanks,
    Mohan
    04/07/08 17:14:42 Error starting ORMI-Server. Unable to bind socket: Address already in use
    04/07/08 17:14:44 Oracle Application Server Containers for J2EE 10g (9.0.4.0.0) initialized
    04/07/08 17:14:44 java.lang.NullPointerException
    04/07/08 17:14:44 at com.evermind.server.rmi.RMIServer.run(RMIServer.java:470)
    04/07/08 17:14:44 at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(Releasabl
    eResourcePooledExecutor.java:186)
    04/07/08 17:14:44 at java.lang.Thread.run(Thread.java:534)

    have you checked to see what is running before you start your oracle app server on your ports? you can use netstat for one

  • LOG Q0I= NiIBindSocket: bind (98: Address already in use) [nixxi.cpp 3740] [Thr 140207008876384] *** ERROR = NiIBindSocket: SiBind failed for hdl 17/sock 7

    Dear All ,
    I am installing SAP Netveiwer 7.2 with oracle 11 g database in suse linux 11  but i am getting one error in Start instance phase , my message server is not getting connected , when i am trying to start manually  then my instance is connected but in this phase sap check message server is up or not , here i am attaching log of message server where i am getting error  , if any buddy knw Plz help me ....
    log file -
    trc file: "dev_ms.new", trc level: 1, release: "720"
    [Thr 140207008876384] Tue Jun 10 01:34:56 2014
    [Thr 140207008876384] ms/http_max_clients = 500 -> 500
    [Thr 140207008876384] MsSSetTrcLog: trc logging active, max size = 52428800 bytes
    systemid   390 (AMD/Intel x86_64 with Linux)
    relno      7200
    patchlevel 0
    patchno    413
    intno      20020600
    make       multithreaded, Unicode, 64 bit, optimized
    pid        7294
    [Thr 140207008876384] ***LOG Q01=> MsSInit, MSStart (Msg Server 1 7294) [msxxserv_mt. 2280]
    [Thr 140207008876384] SigISetDefaultAction : default handling for signal SIGCHLD
    [Thr 140207008876384] ***LOG Q0I=> NiIBindSocket: bind (98: Address already in use) [nixxi.cpp 3740]
    [Thr 140207008876384] *** ERROR => NiIBindSocket: SiBind failed for hdl 17/sock 7
        (SI_EPORT_INUSE/98; I4; ST; 0.0.0.0:3601) [nixxi.cpp    3740]
    [Thr 140207008876384] *** ERROR => MsSCommInit: NiBufListen(sapmsINI) (rc=NIESERV_USED) [msxxserv_mt. 12225]
    [Thr 140207008876384] *** ERROR => MsSInit: MsSCommInit [msxxserv_mt. 2324]
    [Thr 140207008876384] *** ERROR => MsSInit failed, see dev_ms.new for details
    [msxxserv_mt. 7572]
    [Thr 140207008876384] ***LOG Q02=> MsSHalt, MSStop (Msg Server 7294) [msxxserv_mt. 7631]

    Hello Shyam,
    I don't see how updating the kernel would help in this case.
    If the port was already in use, any kernel version would give the same error.
    Hello Arpit,
    Since this is a Linux server, you can also run "lsof -nP|grep 3601" (may need to be logged on as "root"). This should give you more details than "netstat" (e.g., it will give you the PID of the process that's already using the port).
    The solution has already being pointed on this thread. You need to find out which process is using the port, and stop this other process.
    Cheers,
    Isaías

  • Transport error 202 bind failed address already in use

    how to rectify -- transport error 202 bind failed address already in use-- while running CA server
    i have created new production and pub server, first i runned production server after that while running CA server i got that error. if i run CA server independently its running

    It seems like a port conflict issue. You should check rmi and other ports in the configuration file for the component /atg/dynamo/Configuration in the localconfig of your production and publishing servers directories under <ATG>\home\servers. Also, your app server should be configured to run two separate instances for production and publishing server as per the http ports specified in /atg/dynamo/Configuration.

  • Problem with Embedded OC4J: Address already in use: JVM_Bind

    When I try to run a Servlet in JDeveloper 10g it works fine. But when I stop the Embedded OC4J and try to run the Servlet again, the following message appears in the log:
    [Starting OC4J using the following ports: HTTP=8988, RMI=23891, JMS=9227.]
    C:\oracle\ora10g\jdev\jdk\bin\javaw.exe -hotspot -classpath C:\oracle\ora10g\jdev\j2ee\home\oc4j.jar;C:\oracle\ora10g\jdev\jdev\lib\jdev-oc4j.jar -Xverify:none -Ddisable.checkForUpdate=true -Doracle.j2ee.dont.use.memory.archive=true -Doracle.j2ee.http.socket.timeout=500 -Doracle.dms.sensors=NONE -Doc4j.jms.usePersistenceLockFiles=false com.evermind.server.OC4JServer -config C:\oracle\ora10g\jdev\jdev\system9.0.5.0.0.1375\oc4j-config\server.xml
    [waiting for the server to complete its initialization...]
    03/10/23 14:23:01 Error starting ORMI-Server. Unable to bind socket: Address already in use: JVM_Bind
    Process exited with exit code 7.
    What could be causing this problem?
    Thanks in advance!

    Modify the config/rmi.xml file to have the host attribute in the tag as follows:
    <rmi-server port="23791" host="server-ip-address">
    </rmi-server>
    After that, place the log4j-your-jdev-version.jar in appserverhome/j2ee/home/lib folder.
    Restart the server. The bind problem would disappear.
    Hope this solves your problem :-)
    Ramesh

  • Address already in use: JVM_Bind error in DOS

    Hello,
    I am writing a multi threaded client server (Both client and server are multi threaded) program.where I have set of clients performing secure file transfer amongst them self. Here there is a Indexing server who is keeping record of all the files contained by clients. A client will make a request for a file to the Indexing Server which intern return the port no. and address of the client having that file. Now this client will connect to another client (Which now will act as server) to get the file and public key .
    Now I am connecting to server by using fix port number.
    Socket client = new Socket("127.0.0.1",2345)
    Also since the request for file from another client can come therefor I am creating a thread to start listning port on client side by,
    serverSocket serversocket = new serverSocket(client.getLocalport);
    //provided that connection to server with port 2345 already made.
    but when I am running this program through "DOS" it is giving me an error Address already in use: JVM_Bind.
    //checked through netstat and found that localport for the client is bound to 2345 (That is obvious)
    But when I am running this program in unix I am getting no error.

    ServerSocket.setReuseAddress(true) does not work on vista. Why? The following code is OK on XP, but throw the above exception on vista.
         @Test
         public void test() throws Throwable {
              Thread t = new Thread() {
                   public void run() {
                        ServerSocket ss;
                        try {
                             ss = new ServerSocket( 11111 );
                             System.out.println( "In Thread: " + ss );
                             System.out.println( "In Thread: " + ss.accept() );
                        } catch (IOException e) {
                             e.printStackTrace();
              t.start();
              Socket cs = new Socket( (String)null, 11111 );
              System.out.println( cs );
              ServerSocket s = new ServerSocket();
              s.setReuseAddress( true );
              s.bind( new InetSocketAddress( cs.getLocalPort() ) );
              System.out.println( s );
         }

  • Socket Error: Address already in use

    Hello all,
    I'm trying to get the Trac bug tracking system installed on my system(running snow leopard). After quite a bit of tinkering I've managed to install Trac, but as of now, its a standalone entity. I am trying to get this linked to the apache webserver, but having no success. Has anybody done this before? I haven't used unix to this level before and so am struggling with that as well... any info on this is much appreciated.
    One of the instructions to test run Trac as a standalone component was using this command tracd --port 8000 /path/to/myfolder (according to installation instructions at http://trac.edgewall.org/wiki/TracInstall). I stopped it using Ctrl-Z and now when I try to run it again, get the following message and error:
    Traceback (most recent call last):
    File "/usr/local/bin/tracd", line 8, in <module>
    loadentrypoint('Trac==0.12', 'console_scripts', 'tracd')()
    File "build/bdist.macosx-10.6-universal/egg/trac/web/standalone.py", line 290, in main
    File "build/bdist.macosx-10.6-universal/egg/trac/web/standalone.py", line 257, in serve
    File "build/bdist.macosx-10.6-universal/egg/trac/web/standalone.py", line 109, in _init_
    File "build/bdist.macosx-10.6-universal/egg/trac/web/wsgi.py", line 231, in _init_
    File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/SocketS erver.py", line 400, in _init_
    self.server_bind()
    File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/BaseHTT PServer.py", line 108, in server_bind
    SocketServer.TCPServer.server_bind(self)
    File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/SocketS erver.py", line 411, in server_bind
    self.socket.bind(self.server_address)
    File "<string>", line 1, in bind
    socket.error: [Errno 48] Address already in use
    Can somebody please guide me to fix this?
    Message was edited by: capemacuser
    I realize that closing the terminal window "frees" the socket. But, is there something else that I can do while stopping the running application to ensure that the socket also gets "freed"?

    Control-Z does "stop" the process, but it doesn't kill it. Use Control-C to do that. Then, you may have to wait a couple of minutes for the OS to free up your socket until you can try again.

  • "BindException: Address already in use" error all the time!

    I made a simple program that streams lines of text across the network/internet and a simple client program to display that text. The problem is, regardless of what port I choose, I always get this exception on the server's side:
    C:\Users\Nathan\Desktop>java LyricalUploader
    Started Listening
    Bound
    Started Listening
    Starting.java.net.BindException: Address already in use: JVM_Bind
            at java.net.PlainSocketImpl.socketBind(Native Method)
            at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359)
            at java.net.ServerSocket.bind(ServerSocket.java:319)
            at java.net.ServerSocket.<init>(ServerSocket.java:185)
            at java.net.ServerSocket.<init>(ServerSocket.java:97)
            at LyricalUploader.main(LyricalUploader.java:11)What bothers me is it creates the ServerSocket just fine (that's what the output saying "Bound" means) and if I replace the new LyricalThread(ss.accept()).start(); line in the code below with new LyricalThread(ss.accept()).run();, it works fine, It just can't handle more than one client. I have tried many many ports and they all have the same result. What am I doing wrong?
    Here is the code:
    import java.net.*;
    import java.io.*;
    import javax.swing.JFileChooser;
    public class LyricalUploader{
    public static void main(String args[]){
      ServerSocket ss = null;
      int c=0;
      try{
        while(true){
          System.out.println("Started Listening");
          ss = new ServerSocket(49625);
          System.out.println("Bound");
          new LyricalThread(ss.accept()).start();
      catch(Exception e){
        e.printStackTrace();
        System.exit(1);
    import java.net.*;
    import java.io.*;
    public class LyricalThread extends Thread{
      Socket s = null;
      public LyricalThread(Socket so){
        s=so;
      public void run(){
        try{
          System.out.print("Starting.");
          PrintWriter out = new PrintWriter(s.getOutputStream());
          BufferedReader fin =new BufferedReader(new FileReader("Lyrics.txt"));
          System.out.print(".");
          String line = fin.readLine();
          System.out.println(".Done!");
          while(true){
            while(line!=null){
              out.println(line);
              //System.out.println(line);
              line=fin.readLine();
              Thread.sleep(1600);
            fin.close();
            System.out.println("End of Lyrics.txt file.");
            fin =new BufferedReader(new FileReader("Lyrics.txt"));
        catch(Exception e){
          e.printStackTrace();
          return;
      public static void main(String arg[]){
        new LyricalThread(null).start();
    }And the Client code:
    import java.net.*;
    import java.io.*;
    import javax.swing.JFileChooser;
    public class LyricalReader{
      public static void main(String args[]) throws Exception{
        Socket s = null;
        BufferedReader sin = null;
        FileOutputStream out = null;
        try{
          System.out.println("Started");
          System.out.print("Connecting...");
          s = new Socket("2.9.19.94",49625);
          System.out.println("Done!");
          System.out.print("Finding song...");
          sin = new BufferedReader(new InputStreamReader(s.getInputStream()));
          String line = sin.readLine();
          System.out.println("Done!\nStarted reading:\n\n\n\n\n\n");
          while(true){
            System.out.println(line);
            line = sin.readLine();
        }catch(Exception e){
          e.printStackTrace();
          sin.close();
          s.close();
          out.close();
        System.exit(0);
    }

    Hi,
    your Server must create only one ServerSocket, not multiples! So write
      try{
        ss = new ServerSocket(49625);
        System.out.println("Bound");
        while(true){
          System.out.println("Started Listening");
          new LyricalThread(ss.accept()).start();
      catch(Exception e){
        e.printStackTrace();
        System.exit(1);
      }and take the creation of the ServerSocket outside the while-loop.
    Martin

  • Address already in use

    Hi Guys!
    I'm using Oracle9ias 9.0.3. When I execute
    $opmnctl startall, I get the next error in all instances (<instance>.default_island.1):
    java.net.BindException: Address already in use
    at java.net.PlainSocketImpl.socketBind(Native Method)
    I have 3 instances, each one with different port rmi, configured in opmn.xml.
    I used -Drmi.debug=true -Drmi.verbose=true in java-options and I got in the log:
    RMIServer.DEBUG: using OPMN, address is ZERO_ADDRESS, use local address instead
    RMIServer.DEBUG: creating RMIServer ServerSocket for address: antares.txp/127.0.0.1 port: 3114
    RMIServer.DEBUG: Launching RMIServer thread
    RMIServer.DEBUG: creating RMIServer ServerSocket for local address: antares.txp/127.0.0.1 port: 3114
    at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:447)
    at java.net.ServerSocket.<init>
    Any idea??
    Thanks!
    Carlos Guerra

    Try to use netstat -an to see if there is anything listening on this port (you should see "LISTEN" on far right on line). There is no process id or whatever, you just know there is a server socket open - might be a different program, might be a running instance incorrectly shuted down...
    On the left there is a local address, on right there is a remote address (might be a connection from the same host, of course)
    If there is nothing running before starting server, there is probably a port mismatch in your settings (i. e. rmi port for next started instance is the same as jms or http port of prevous one... I don't know about all of the ports settings.
    Sometimes, especially on Windows there is a situation when server socket is not correctly closed and you have to restart Windows itself.
    Myrra

Maybe you are looking for