SMTP connection refused too many connections

I keep getting the above error on my email.
I'm using blue iris to send me emails using my bt account and over the last month I'm am getting more and more SMTP failed to connect, when is look at the logs on blue iris it says connection refused too many active connections.
Can anyone tell me if BT has a limit on the number of active connections to my btinternet.com email?

Hi ChrisBRRS,
Welcome and thanks for posting.
I'm sorry for the problems you're having.  I've moved your post here where it's more relevant and others should be along now to offer further advice 
All the best,
Robbie
BTCare Community Mod
If we have asked you to email us with your details, please make sure you are logged in to the forum, otherwise you will not be able to see our ‘Contact Us’ link within our profiles.
We are sorry that we are unable to deal with service/account queries via the private message(PM) function so please don't PM your account info, we need to deal with this via our email account :-)
If someone answers your question correctly please let other members know by clicking on ’Mark as Accepted Solution’.

Similar Messages

  • Mail server failure. connection refused. too manay connections - when using sp_send_dbmail with job agent

    Hello All,
    I've a weird problem when I'm using "SP_Send_dbmail" to send a simple e-mail to two recipients using job agent.
    The code i write is:
    exec msdb.dbo.sp_send_dbmail
        @profile_name= 'Send Reports',
        @recipients = '[email protected] ; [email protected]',
        @Copy_recipients = '[email protected]',
        @Body = 'Whatever will be here',
        @subject = 'Daily Reports',
        @file_attachments = 'd:\MyFolder\MyFile.txt';
    The error i receive is:
    The mail could not be sent to the recipients because of the mail server failure. (Sending Mail using Account 1 (2015-03-03T14:57:17). Exception Message: Cannot send mails to mail server. (Service not available, closing transmission channel. The server response
    was: service not available (connection refused, too many connections)).
    Does any one know why i get such error???
    Please advise.
    Hany Mounir

    Hello,
    Please consider any Windows Firewall, security hardware/software, policies on your organization’s mail
    server.
    Hope this helps.
    Regards,
    Alberto Morillo
    SQLCoffee.com

  • ICloud mail "Too many connections" error

    Anyone ever gotten this error when sending to an @me.com account? This is what it looks like when I send email to myself using it. My gut says it's a Boxcar issue but I haven't used that service in months and I've now disconnected anything from it. This is the error I'm seeing back when sending email to my iCloud account:
    This report relates to a message you sent with the following header fields:
    Message-id: <[email protected]>
    Date: Wed, 07 Nov 2012 14:29:50 -0500
    From: Brad Franklin <[email protected]>
    To: Brad Franklin <[email protected]>
    Subject: Test
    Your message cannot be delivered to the following recipients:
    Recipient address: [email protected]
    Original address: [email protected]
    Reason: Rejection greeting returned by server.
    Diagnostic code: smtp;554 Transaction failed. Too many connections.
    Remote system: dns;push.boxcar.io (TCP|17.172.204.240|45227|173.192.56.11|25) (Transaction failed. Too many connections.)
    Original-envelope-id: [email protected]
    Reporting-MTA: dns;st11p01mm-asmtp005.mac.com (tcp-daemon)
    Arrival-date: Wed, 07 Nov 2012 19:29:54 +0000 (GMT)
    Original-recipient: rfc822;[email protected]
    Final-recipient: rfc822;[email protected]
    Action: failed
    Status: 5.0.0 (Rejection greeting returned by server.)
    Remote-MTA: dns;push.boxcar.io (TCP|17.172.204.240|45227|173.192.56.11|25)
    (Transaction failed. Too many connections.)
    Diagnostic-code: smtp;554 Transaction failed. Too many connections.

    I'm also having this issue with two of my accounts (the main ones I use the most!) I get this message:

  • Error "421 #4.4.5 Too many connections from your host"

    We have deployed a Java application using JavaMail which enables people to send email to their contact lists. It has been in use for a few years, various updates being applied over that time. Most of our customers have no problem. But a couple of weeks ago, two of them suddenly could no longer send emails.
    The connection to the SMTP server works but when the application sends email, it gets an error 421. A debugging dump is reproduced below: the target email address is changed to protect the uninvolved; messages starting with **** come from my program, other come from JavaMail.
    Can anyone solve this problem? suggest where to look? Thanks.
    DEBUG SMTP: useEhlo true, useAuth true
    DEBUG SMTP: trying to connect to host "smtp10.bellnet.ca", port 25, isSSL false
    220 toip35-bus.srvr.bell.ca ESMTP
    DEBUG SMTP: connected to host "smtp10.bellnet.ca", port: 25
    EHLO Communications
    250-toip35-bus.srvr.bell.ca
    250-8BITMIME
    250 SIZE 20971520
    DEBUG SMTP: Found extension "8BITMIME", arg ""
    DEBUG SMTP: Found extension "SIZE", arg "20971520"
    **** transport connect worked
    NOOP
    250 ok
    **** about to send message to [email protected]
    NOOP
    250 ok
    DEBUG: getProvider() returning javax.mail.Provider[TRANSPORT,smtp,com.sun.mail.smtp.SMTPTransport,Sun Microsystems, Inc]
    DEBUG SMTP: useEhlo true, useAuth true
    **** cEmailAuthenticator.getPasswordAuthentication() called
    DEBUG SMTP: useEhlo true, useAuth true
    DEBUG SMTP: trying to connect to host "smtp10.bellnet.ca", port 25, isSSL false
    421 #4.4.5 Too many connections from your host.
    DEBUG SMTP: could not connect to host "smtp10.bellnet.ca", port: 25, response: 4

    Looks like the server keeps track of the number of connections from each machine, and when the number of connections in a certain period exceeds some number, that machine is deemed to be a potential spammer. At any rate it is something you should discuss with the manager of that server.

  • Too many connections - even after closing ResultSets and PreparedStatements

    I'm getting a "Too many connections" error with MySQL when I run my Java program.
    2007-08-06 15:07:26,650 main/CLIRuntime [FATAL]: Too many connections
    com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Too many connections
            at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:921)
            at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870)
            at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:812)
            at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3269)
            at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1182)
            at com.mysql.jdbc.Connection.createNewIO(Connection.java:2670)I researched on this and found out that I wasn't closing the ResultSet and the PreparedStatement.
    The JDBC connection is closed by a central program that handles connections (custom connection pooling).
    I added the code to close all ResultSets and PreparedStatements, and re-started MySQL as per the instructions here
    but still get "Too many connections" error.
    A few other things come to mind, as to what I may be doing wrong, so I have a few questions:
    1) A few PreparedStatements are created in one method, and they are used in a 2nd method and closed in the 2nd method
    does this cause "Too many connections" error?
    2) I have 2 different ResultSets, in nested while loops where the outer loop iterates over the first ResultSet and
    the inner loop iterates over the second ResultSet.
    I have a try-finally block that wraps the inner while loop, and I'm closing the second ResultSet and PreparedStement
    in the inner while loop.
    I also have a try-finally block that wraps the outer while loop, and I'm closing the first ResulSet and PreparedStatement
    in the outer while loop as soon as the inner while loop completes.
    So, in the above case the outer while loop's ResultSet and PreparedStatements remain open until the inner while loop completes.
    Does the above cause "Too many connections" error?
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    The following is relevant sections of my code ( it is partially pseudo-code ) that shows the above 2 cases:
    init( Connection jdbcConnection ){
       String firstSQLStatement = "....";
       PreparedStatement ps1 = jdbcConnection.prepareStatement( firstSQLStatement );
       String secondSQLStatement = "....";
       PreparedStatement ps2 = jdbcConnection.prepareStatement( secondSQLStatement );
       String thirdSQLStatement = "....";
       PreparedStatement ps3 = null;
       ResultSet rsA = null;
       try{
            ps3 = jdbcConnection.prepareStatement( thirdSQLStatement );
            rsA = ps3.executeQuery();
            if( rsA.next() ){
                   rsA.getString( 1 );
       }finally{
            if( rsA != null )
                   rsA.close();
            if( ps3 != null )
              ps3.close();
       //Notice, how ps1 and ps2 are created here but not used immediately, but only ps3 is
       //used immediately.
       //ps1 and ps2 are used in another method.
    run( Connection jdbcConnection ){
         ResultSet rs1 = ps1.executeQuery();
            try{
               while(rs1.next()){
                    String s = rs1.getString();
                    ps2.setString(1, s);
              ResultSet rs2 = ps2.executeQuery();
                    try{
                   while(rs2.next()){
                        String s2 = rs2.getString();
                    }finally{
                   if( rs2 != null )
                     rs2.close();
                   if( ps2 != null )
                     ps2.close();
         }catch( Exception e ){
              e.printStackTrace();
         }finally{
            if( rs1 != null )
                  rs1.close();
               if( ps1 != null )
                  ps1.close();
    //Notice in the above case rs1 and ps1 are closed only after the inner
    //while loop completes.
    }I appreciate any help.

    Thanks for your reply.
    I will look at the central connection pooling mechanism ( which was written by someone else) , but that is being used by many other Java programs others have written.
    They are not getting this error.
    An addendum to my previous note, I followed the instructions here.
    http://dev.mysql.com/doc/refman/5.0/en/too-many-connections.html
    There's probably something else in my code that is not closing the connection.
    But I just wanted to rule out the fact that opening a PreparedStatement in one method and closing it in another is not a problem.
    Or, if nested ResultSet loops don't cause the problem.
    I've read in a few threads taht "Too many connections" can occur for unclosed RS and PS , and not just JDBC connections.

  • Sendmail in Solaris 10 - 554 Too many connections from origin

    I recently upgraded a server from Solaris 9 to Solaris 10. One of the apps that worked fine on S9 is now having a problem. I believe I have discovered the cause, but I'm not having any luck coming up with a solution.
    The app in question queries a database for a list of e-mail addresses (all within our own domain) and then sends e-mail to each user. The messages are sent to our Barracuda firewall/spam filtering appliance, and it relays the messages on to our Exchange server.
    The problem that arose after the upgrade is that sendmail is opening too many concurrent connections to the Barracuda, and the 'Cuda is replying with "554 Too many connections from origin".
    I see that there is a sendmail configuration parameter "SingleThreadDelivery" that will only allow one connection to the Barracuda at a time. That appears to be overly restrictive, though.
    My question is this: is there a way to tell sendmail to only allow some number of concurrent connections to the 'Cuda so as not to hit this limit?
    Thanks,
    Bill

    Glen,
    Thanks for the reply.
    Yes, I did look at those, but my understanding was that those parameters effect inbound connection and in our case, the problem is that we want to limit the number of outbound connections.
    As it turns out, the S10 upgrade was not the cause of this problem. At the same time that we upgraded we also added a second network interface (and IP address). Unknown to either myself or the current Barracuda admin, the old IP had been configured into the 'Cuda so that rate limits did not apply. The fix was to add the second IP, too (well actually, he decided to open it up to all of our servers' internal IPs).
    Bill

  • Mail Alert with Triangle Exclamation Mark with iMap - Too Many Connections?

    I have one Laptop (Macbook mid-07) on Leopard 10.5.6 and a Macbook Pro 09 on Leopard 10.5.8. I just switched over to iMap where I have two email accounts set up on both laptops. Both laptops have identical accounts set up on them.
    I'm currently geting the triangle with the exclamation mark alert on the inboxes of both accounts when both laptops have Apple Mail open. Is this an issue with Apple Mail or my Service Provider possibly complaining that I have too many connections? I don't get these alerts when only one laptop has the Mail App open. The alert reads:
    Alert
    There may be a problem with the mail server or the network. Check the settings for the account "IMAP" or try again.
    The server error encountered was: The attempt to read data from the server "mail.mydomain.com" failed.
    However, Mail seems to send and receive okay with the alerts popping up and so I'm not sure if this alert is anything to be serioulsy concerned about. Or, is there a way to fix this?

    I set mail to fetch messages every 15 minutes where I delayed one laptop in opening up mail initially by 5 minutes. That way, both laptops are not fetching mail concurrently and there's a gap of time for them to download mail before the other starts. This seemed to have fix this alert issue and I'm no longer getting these messages.
    Although, 15 minutes seems to be a bit long for auto fetching since my email can be under some time constraints. Does anyone know how to set the time to check every 10 minutes which I can probably live with? Currently, I have the option to set for 1 minute, 5 minutes, 15 minutes, 30 minutes, 1 hour, or manually.

  • Too many connections to call SAP functions

    Hello everyone,
    I'm having a random problem while accessing SAP functions on my applications.
    Sometimes i get this message:
    Could not create JCOClientConnection for logical Systems: WD_MODELDATA_DEST - Model: class com.xxx.sap.NameController.
    Please assure that you have configured the RFC connections and/or logical system name properly for this model.
    A friend tells me that this has to do with the fact that i use one model per SAP function ,
    and a custom controller for each unique model.
    This creates too many connections and launches the error.
    Can anyone tell me how to solve this problem without
    having to reimport all my functions into one single model  and one single custom controller ??
    My biggest problem is that doing that would increase the time spent on project development dramatically.
             Thank you everyone,
                  Nuno Santos

    Hi Guillaume,
    My answers:
    1. All connections are closed by time-out, but i would really apreciate if someone could explain how to explicitly close them after calling them.
    2. No. That is the big problem. This was my first project, and in a very simplistic (and stupid) way i created a webdynpro model for each SAP function that i call. This means that an application may call 5 or 6 functions during it's runtime, meaning 5 or 6 connections. Multiply this by a few hundred users...
    What are my choices here?
    Help will be really apreciated.
       Thanks to everyone,
           Nuno Santos

  • Why Customer get too many "Connection reset by peer"

    Hi,
    I have CSS 11503 V7.50 without SSL Module.
    I have 4 real servers and LB method is Round Robin. Customer tests the methods by using two way.
    First A requestor try to connect service via VIP address.Second requestor try to connect to real servers by using directly real server IP address (Bypass Load balacer)
    Customer cheks the real server logs and sees that in first experiment (via VIP) there too many "connection reset by peer" messages. For second experiment there are few same messages.
    I wonder why real servers get this messages. Plus, why CSS reset flows. I know flow timeout does that. But if there are too many idle flows, it says something wrong?

    There is a command, but I was more thinking about the server side counter or log info.
    If you really want to see if the CSS sent a RESET or not, you can use the following engineering command
    CSS11503-2(debug)# symbol-table load SPRITZ
    Loading string table... 660,706
    Loading symbols........ 24,937
    Load complete.......... 1,259,194
    CSS11503-2(debug)# shell 1 1 FMShowReset
    FM RESET COUNTERS:
    Last FM Reset Case was 7
    0 Case 1: Server Flow not in WCC
    0 Case 2: Client Flow not in WCC
    0 Case 3: FM_ContentHandleUnexpectedTermination
    0 Case 4: Server not responding on backend, reset client
    0 Case 5: Server not responding on backend, reset server
    0 Case 6: WCC returns empty vector, reset client
    18 Case 7: Reset to server on DOS attack
    2 Case 8: FM_HandleEarlySpoofTermination
    0 Case 9: Reset client if join fails in spoof flow
    0 Case 10: TCP SYN Exceeded
    0 Case 11: Reset server on remap backend connection
    0 Case 12: WCC did not return WCC_TCP_SPOOF for FAUX SYN
    0 Case 13: FM_HandleFinalClose
    0 Case 14: FM_CreateRedirectServerReset
    0 Case 15: Flow reset, route change
    0 Case 16: Peer reset, route change
    0 Case 17: Peer Flow rejected, either WCC rejected or no egress port
    0 Case 18: Reset flow, bridge forwarding change
    0 Case 19: Reset flow, egress port went down
    0 Case 20: Client side connection reset sent
    0 Case 21: Server side connection reset sent
    0 Case 22: Reset client due to server reset
    0 Case 23: Received ACK to SYN, reset existing connection on server
    0 Case 24: Server side reset, server port down
    0 Case 25: Client side reset, client port down
    0 Case 26: Server side reset, client port down
    0 Case 27: Client side reset, server port down
    0 Case 28: MIDNAT reject, reset server
    0 Case 29: MIDNAT reject, reset client
    0 Case 30: FM_HandleTcpResetVipUnavailable
    0 Case 31: MID SPOOF reject, reset server
    0 Case 32: MID SPOOF reject, reset client
    Gilles.

  • IPhones w ActiveSync creating too many connections on mail server

    Over the past two days, I have started getting 503 errors, indicating too many connections. When I went to look at active connections, I noticed that the vast majority were from the iPhones that connect using ActiveSync. Just in the 45 minutes since I cleared all active connections, my iPhone has created 14 active connections. When you multiply that by the eight iPhones we have at this company the number jumps to 112. It is easy to see why the 503 error is getting generated by the end of the business day. It is as though the iPhone is unable to let go of an active connection, and just starts a new one. This only seems to be happening since the iPhone 3.0 update. Is anyone else experiencing similar issues?

    Yes - I'm having a very similar problem on our server. But in this case the user has a very large mailbox - and imap processes are spawned but never die unless I go in and manually kill them.

  • Too many connections!what can i do?help :)

    Hello,everyone!
    I am a programmer in China,I like java,During working I met a question,please give me some indicate!
    //the main program
    public void actionPerformed(ActionEvent e){
    mysqldatabean mysqldata=new mysqldatabean();
    String sql1="select*from talbe1";
    ResultSet rs1=mysqldata.mysqlexecuteQuery(sql1);
    try{
    while(rs1.next()){
    String id=rs1.getString("id");
    String sql2="select*from table2 where id='"+id+"'";
    ResultSet rs2=mysqldata.mysqlexecuteQuery(sql2);
    try{
    while(){
    catch(SQLException ex){}
    mysqldata.destroyconnection();
    catch(Exception ex){}
    mysqldata.destroyconnection();
    //the class
    class mysqldatabean {
    String mysqlDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
    String mysqlConnStr = "jdbc:odbc:mysqldata";
    Connection mysqlconn = null;
    ResultSet mysqlrs = null;
    Statement mysqlstmt=null;
    public mysqldatabean() {
    try {
    Class.forName(mysqlDBDriver);
    catch(java.lang.ClassNotFoundException e) {
    System.err.println("mysqlexecuteQuery: " + e.getMessage());
    public ResultSet mysqlexecuteQuery(String mysqlsql) {
    try {
    mysqlconn = DriverManager.getConnection(mysqlConnStr);
    mysqlstmt = mysqlconn.createStatement();
    mysqlrs = mysqlstmt.executeQuery(mysqlsql);
    catch(SQLException ex) {
    System.err.println("mysqlexecuteQuery: " + ex.getMessage());
    return mysqlrs;
    public void destroyconnection(){
    boolean connboolean=false;
    try{
    mysqlconn.close();
    connboolean=mysqlconn.isClosed();
    catch(SQLException ex){}
    Question:
    because of large number of datas,while execute,Exception:mysql server, odbcdriver too many connections, getSQLState:s1000
    how can i change this program?please give me the anwser(code),I need it immediately!
    Help!!:)
    [email protected]

    // You are trying to establish connection for all statements.
    // You only need connection per database connection not per statement.
    // Try to create connection outside of mysqlexecuteQuery()
    mysqldatabean mysqldata=new mysqldatabean();
    String sql1="select*from talbe1";
    mysqlconn = DriverManager.getConnection(mysqlConnStr);
    ResultSet rs1=mysqldata.mysqlexecuteQuery(sql1);
    public ResultSet mysqlexecuteQuery(String mysqlsql) {
    try {
    mysqlstmt = mysqlconn.createStatement();
    mysqlrs = mysqlstmt.executeQuery(mysqlsql);
    catch(SQLException ex) {
    System.err.println("mysqlexecuteQuery: " + ex.getMessage());
    return mysqlrs;

  • SMTP Send Mail - too many authenticated connection...

    Using Outlook on a MAC, and within this last week I have started to get this error when sending mail. I have read all the forum posts and help documents on this issue and ensured that my settings are as described and yet I am still having this problem.
    Should I be switching to IMAP to avoid this problem, and if so how do I do that without losing all my SMTP downloaded email?
    Thanks for any insight - it is causing me real issues now as I'm job hunting and can't reply to job emails!!!!

    Yes same problem for me. In the last three days, or so, I will get the random "too many authenticated connections" message. I have just phoned BT twice this afternoon and had great trouble understanding both Indian guys. One suggested he's fixed it by adjusting things at BT to accept "S Client Mail", whatever that means! That however didn't fix it. The second suggested I needed to reset password (easy option that one), until I pointed out that I am having no trouble with password use on the BT webmail page or through my phone. He then said I'd have to reload Outlook to solve the problem. Yeah right, like I'm gonna loose all my emails, settings and calendar to satisfy his theory of "if it doesn't work then reload it". There is clearly a server problem somewhere and OH, how I would love to speak to someone, (anyone), at BT who actually knows what they are talking about from a network/server angle. Anyone worth their salary in networks could trace my activity online and find out what was going on and why it was failing.
    Setting POP3 and all others checked by BT as being correct.

  • Safari with IIS: Too many connections?

    Has anyone out there any experience using Safari with Microsoft's IIS? In particular, the 'Personal Edition' of IIS that only allows 10 concurrent connections?
    I'm finding that whenever I access one of the websites running on IIS using Safari, I can only click through a limited number of pages before I get an error message from the IIS server: "Too many people are trying to connect to this server."
    It's almost as if Safari is treating each request as a new connection. I don't have this problem running Firefox or IE. Come to think of it, I never had this problem before Tiger!
    I'm using a PC running IIS as a testing server for my ASP-based websites.
    Any ideas ... anyone? :o)
    Kind regards,
    Oli Trenouth
    Media Developer

    This is a bit sad -- I'm answering my own post :o)
    In case anyone is interested, I think I may have found a workaround. Aparently the problem is related to the HTTP Keep-alive request. I guess Safari is trying to keep to many connection alive, and running up a bill on the server.
    One way around this is to turn off the Keep-Alive setting within IIS, however this causes problems if you're using authentication on your site. The alternative is reduce the session timeout to something small, such as 5 or 10 seconds.
    Luckily my site doesn't rely on session states, so I'm ok there!
    I guess the real solution is to get a proper webserver
    If anyone has any better suggestions, I welcome your comments.
    Many thanks,
    Once again,
    Oli Trenouth.

  • Too many connections - limit of 150 reached

    We ran into a situation where a program (written in PHP, running under Apache) was spawned via crontab every 30 seconds for test purposes. It connected to the database but did not disconnect.
    Net result: Once the program had been started 150 times, the database refused any more connections. No valid users could connect. I couldn't even connect from the oracle privileged account.
    Item 1: The process will be modified to explicitly close its connection when done, rather than trusting the job to default behavior of PHP. So, hopefully, we will not run into this a second time.
    Item 2: But if we do have this problem again, I need to know how to intervene when the connection limit has been reached. I was not able to connect myself and therefore could not query v$process or related tables to gather any information. I could kill the various (useless) listener processes at the unix command line, but it still took time for Oracle to sense the dead process and mop up. How to accomplish this quickly?
    Item 3: I can probably set up the rogue process to login as a different user and then set a resource profile for that user including timeouts. Any suggestions on values for that resource profile?
    Item 4: Is there a way to reserve a listener connection for a privileged account such as the DBA?
    Thanks for any guidance.
    -- Chris Curzon

    ChrisCurzonDBA wrote:
    Thanks for the friendly reply.
    What worried me was that I had to wait for the useless connections to clear, before I could connect and see what the sessions were. Yes, Oracle had to roll back any uncommitted work, and there's no way to speed that up, but I wanted to see that processes from inside of Oracle (connected) not from outside.
    Is it possible to configure the listener to "reserve" one connection for a privileged account? No.
    It is not the listener's responsibility. In fact, it is not even the listener's responsibility to maintain existing connections. Once the listener services the connection request, it is totally out of the picture. You can even kill the listener, and any existing connections will continue on. It's like being introduced to someone at a party. Once you are introduced to someone (by The Listener), you carry on your conversation with that person directly, not through the person (The Listener) who introduced you.
    >
    -- Chris

  • Connection refused to host: connection timed out

    I have been struggling with this problem a couple of days now so I really hope someone can help me. I am trying to get rmi to work in a NAT environment. We use a firewall, so I have opened port 1099 and 2020 which I use as a fixed port for communication (just to be sure it is not a firewall thing); I use the following code:
    //server
    public class ComputeEngine extends UnicastRemoteObject
    implements Compute
    public ComputeEngine() throws RemoteException {
    super();
    public String getMessage() {
    return "you have successfully connected to the server";
    public static void main(String[] args) {
    if (System.getSecurityManager() == null) {
    System.setSecurityManager(new RMISecurityManager());
    try {
    String port = args[0];
    try {
    RMISocketFactory.setSocketFactory(new FixedPortRMISocketFactory(Integer.parseInt(port)));
    } catch (IOException e) {
    e.printStackTrace();
    LocateRegistry.createRegistry( 1099 );
    catch (RemoteException e1) {
    e1.printStackTrace();
    String name = "rmi://localhost/Compute";
    try {
    Compute engine = new ComputeEngine();
    Naming.rebind(name, engine);
    System.out.println("ComputeEngine bound");
    while(true); //stay alive
    } catch (Exception e) {
    System.err.println("ComputeEngine exception: " + e.getMessage());
    e.printStackTrace();
    public Socket createSocket(String host, int port)
    throws IOException {
    System.out.println("creating socket to host : " + host + " on port " + port);
    return new Socket(host, port);
    * Create a server socket on the specified port (port 0 indicates
    * an anonymous port) and writes out some debugging info
    * @param port the port number
    * @return the server socket on the specified port
    * @exception IOException if an I/O error occurs during server socket
    * creation
    * @since JDK1.1
    public ServerSocket createServerSocket(int port)
    throws IOException {
    port = (port == 0 ? portnumber : port);
    System.out.println("creating ServerSocket on port " + port);
    return new ServerSocket(port);
    //client
    public class ComputePi {
    public static void main(String args[]) {
    if (System.getSecurityManager() == null) {
    System.setSecurityManager(new RMISecurityManager());
    try {
    String name = "rmi://" + args[0] + "/Compute";
    Compute comp = (Compute) Naming.lookup(name);
    System.out.println("connected to server");
    System.out.println(comp.getMessage());
    } catch (Exception e) {
    System.err.println("ComputePi exception: " + e.getMessage());
    e.printStackTrace();
    I start the client with:
    java -Djava.security.policy=policy.all -jar client.jar 194.2.4.6:1099
    I start the server with:
    java -Djava.rmi.server.codebase="file:/C:\RMI\\server.jar" -Djava.rmi.server.hostname="194.2.4.6" -Djava.security.policy=policy.all -jar server.jar 2020
    As you can see I set the "-Djava.rmi.server.hostname" property which should be a solution to the NAT problem. However I keep getting the following exception!!??!!:
    ComputePi exception: Connection refused to host: 194.2.4.6; nested exception is:
         java.net.ConnectException: Connection timed out: connect
    java.rmi.ConnectException: Connection refused to host: 194.2.4.6; nested exception is:
         java.net.ConnectException: Connection timed out: connect
         at sun.rmi.transport.tcp.TCPEndpoint.newSocket(Unknown Source)
         at sun.rmi.transport.tcp.TCPChannel.createConnection(Unknown Source)
         at sun.rmi.transport.tcp.TCPChannel.newConnection(Unknown Source)
         at sun.rmi.server.UnicastRef.newCall(Unknown Source)
         at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
         at java.rmi.Naming.lookup(Unknown Source)
         at client.ComputePi.main(ComputePi.java:14)
    Caused by: java.net.ConnectException: Connection timed out: connect
         at java.net.PlainSocketImpl.socketConnect(Native Method)
         at java.net.PlainSocketImpl.doConnect(Unknown Source)
         at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
         at java.net.PlainSocketImpl.connect(Unknown Source)
         at java.net.Socket.connect(Unknown Source)
         at java.net.Socket.connect(Unknown Source)
         at java.net.Socket.<init>(Unknown Source)
         at java.net.Socket.<init>(Unknown Source)
         at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(Unknown Source)
         at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(Unknown Source)
         ... 7 more
    Can anyone help me with this, please??????
    kind regards,
    Christiaan

    Yes, i can ping it from the client.
    I have also noticed that when i run my server with the option -Djava.rmi.server.hostname=IP the applications stops automatically after a few minuts...
    I'm not using nothing about codebase. I have the stub and skel classes in server and client machines..
    I add the complete exception:
    Client exception: java.rmi.ConnectException: Connection refused to host: external_IP; nested exception is:
    java.net.ConnectException: Connection timed out: connect
    java.rmi.ConnectException: Connection refused to host: external_IP; nested exception is:
    java.net.ConnectException: Connection timed out: connect
    at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:567)
    at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:185
    at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:171)
    at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:101)
    at example.hello.Server_Stub.sayHello(Unknown Source)
    at example.hello.Client.main(Client.java:55)
    Caused by: java.net.ConnectException: Connection timed out: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
    at java.net.Socket.connect(Socket.java:426)
    at java.net.Socket.connect(Socket.java:376)
    at java.net.Socket.<init>(Socket.java:291)
    at java.net.Socket.<init>(Socket.java:119)
    at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirect
    SocketFactory.java:22)
    at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMaster
    SocketFactory.java:128)
    at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:562)
    ... 5 more

Maybe you are looking for