Edge Server send RST packet to Client

Hi all,
I'm meeting an issue, please help me!
I'm setting up a testing LAB. After I deployed Edge Server, everything may be fine. But Client connects to Edge server, after TLS handshake, the server send RST packet to
Client. Please refer picture below.
I used CA built on Domain Controller server to assign Cert to internal and external interface of Edge server. I know I should use a public CA on Internet to assign Cert to external interface, but I'm setting LAB for testing, so I used internal CA. And my
domain internal and external are the same (e.g: internal is edge.sip96x2.com and external is access.sip96x2.com). From Client, I installed Root CA Cert downloaded from CA on Domain Controller. Client from external doesn't
have DNS server, instead of using Hosts file, the Host file includes:
"100.20.252.12     access.sip96x2.com"
I don't know what is information need to show here, if you required any information, please let me know, thanks so much!

To work with your Lync Client from External over the edge, the Lync Client has to reach
Access Edge, Audio/Video Edge and Web Edge IP.
To login to your Lync Edge you can use the lync Manual Configuration access.sip96x2.com:443.
You should use the host fqdn for internal Connection and the three needed External FQDN for the edge.
To use a private CA ist allways possible for a Lab.
http://ocsguy.com/2010/11/21/deploying-an-edge-server-with-lync/
regards Holger Technical Specialist UC

Similar Messages

  • Pls help: server send a file upon client's request

    I just started learning Java and I'm trying to write a simple file transfer program. My problem should be in the transfer part. Code as follows:
    Client side:
    package p2pclient;
    import java.io.*;
    import java.net.*;
    public class P2PClient {
    public static void main(String argv[]) throws Exception
      String filename;
      try {
      Socket clientSocket = new Socket("localhost", 6783);
      BufferedReader inFromUser = new BufferedReader( new InputStreamReader(System.in));
      filename = inFromUser.readLine();
      DataOutputStream outToServer = new DataOutputStream(clientSocket.getOutputStream());
      outToServer.writeBytes(filename);
      String newname = "C:\\" + filename;
      File file = new File(newname);
      byte[] Byte = new byte[1120];
      DataInputStream inFromSocket = new DataInputStream(clientSocket.getInputStream());
      FileOutputStream fout = new FileOutputStream(file);
      int reads;
      while((reads = inFromSocket.read(Byte)) != -1){
      fout.write(Byte, 0, Byte.length);
      clientSocket.close();
      catch (java.io.IOException e) {
          System.err.println("error connecting to " + "Daniel-Ding" + ":" + e);
          return;
    }On the server side:
    package p2pserver;
    import java.io.*;
    import java.net.*;
    import java.util.logging.*;
    class FileTransfer implements Runnable {
      private Socket connectionSocket;
      FileTransfer(Socket connectionSocket) {
        this.connectionSocket = connectionSocket;
      public void run(){
            try {
                String fileName;
                BufferedReader inFromClient = new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));
                fileName = inFromClient.readLine();
                System.out.println("received filename: "+ fileName);
                File fl = new File(fileName);
                byte[] filebuffer = new byte[1120];
                FileInputStream fin = new FileInputStream(fl);
                int bytesRead;
            while ((bytesRead = fin.read(filebuffer)) != -1) {
                connectionSocket.getOutputStream().write(filebuffer, 0, bytesRead);         
                connectionSocket.close();
            } catch (IOException ex) {
                Logger.getLogger(FileTransfer.class.getName()).log(Level.SEVERE, null, ex);
    class P2PServer {
        public static void main(String argv[]) throws Exception
            ServerSocket welcomeSocket = new ServerSocket(6783);
            while(true) {
                Socket connectionSocket = welcomeSocket.accept();
                FileTransfer ft;
                ft = new FileTransfer(connectionSocket);
                Thread thread = new Thread(ft);
                thread.start();
    }I can see an empty file with the name of 'newname' in my C drive but no data transfered.
    Thanks a lot in advance.

    Hi Peter,
    Sorry to bother you again. I tried to increase the size of the buffer. The speed improved but the transfered file quality became intolerable. I tested it with some mp3 files and found that with large buffer size there was a lot of noise in the transfered mp3s. Any idea what I can do to optimize this trade-off?
    Many thanks.
    Best,
    Daniel

  • Clarification about source and destination IPs for internal clients and Edge server

    I just wanted to get some clarification on the correct traffic flow between internal Lync clients and the Edge server.
    From all the diagrams I've looked at I was under the impression that if internal clients need to hit the Edge server to talk to external clients they should always do so through the Edge Internal interface which bridges to the Edge External interface and
    out to the internet.  Specifically port 3478 from the Edge AV External interface to the internal clients.
    We aren't seeing that in our environment.  When internal clients are talking to external clients we see the Edge AV External interface communicating directly with the internal client.  In fact we found this out because after the migration to Lync
    2013 external users couldn't created a AV connection to internal users on either the Lync servers.  We saw traffic on 3478 being dropped between the Edge AV External interface and the internal client.  Once we opened that port AV traffic worked.
    We never put this rule in until we introduced Lync 2013.  Lync 2010 didn't seem to require it.
    Is that the correct flow?

    I would also really love to know the outcome of this but it looks like the thread is marked as "Answered" and it is not so. 
    I've been working with a troublesome Lync deployment in which internal users are having issues sharing their desktop with external and federated users. After opening up all the 50000-59999 range for TCP/UDP on the A/V Edge external interface things are working
    much better, but we still see sporadic failures.
    It lead us to start digging into the network traffic. We see that UDP traffic on port 3478 is being routed back from the external client to the Edge A/V's external interface, inside of the DMZ's perimeter, then directly to the internal client on the internal
    network. It doesn't look like it's making a connection since the stream is so small, so I wonder if there is a design flaw in my topology?
    There are persistent static routes on the Edge server that use the internal interface to route internally directed traffic over the internal gateway. Tracert confirms the flow, but in wireshark traces, running during successful connections, UDP port 3478
    is still sending packets directly to the internal IP from Edge's A/V address. 
    We also see successfully connected sessions communicate on a different network route that we use to handle internet traffic rather than our Lync topology's route (the one defined for A/V traffic). The connection opens on ports in the 50000 range, but goes
    over a router that we have not configured for such traffic. Is that possible?
    Why is UDP traffic on 3478 trying to go directly to internal clients from external interface ?
    It sounds like it's happening elsewhere... Is this a legitimate issue to be diagnosing? Has it been observed and/or resolved by others?

  • Sending msgs to certain clients

    All I have blazeds setup and messages being send to the frontend consumers. How do I do an async message and send it to only 1 of the 3 connect client frontend channels. Is there a way to subscribe or select msgs from certain clientId's?

    Hi Dave,
    As usual, an interesting question..
    For this one, you have to have the source code to the Xtra to
    know exactly
    how it handles socket communication.
    For tcp sockets in general, it's the system that handles i/o,
    and each
    socket works independently.
    So, long as the app (the xtra) makes sure that data are
    copied to the
    socket's buffer soon as the system informs the app that it
    can send more
    data, then you have optimal performance - at least for the
    type of sockets
    the muXtra uses.
    As for your question, I'd say neither.
    When you send a message, it is converted to binary data and
    stored in the
    object's (not socket's) send buffer.
    Soon as all data are sent, and long as more messages exist in
    the sendque,
    then the next message is copied to the send buffer.
    So, if you send 2 messages to two users, it is possible that
    both messages
    are delivered to one of them, while the other is still
    receiving the first.
    "Dave C" <[email protected]> wrote in message
    news:fktrnq$cvh$[email protected]..
    > In a p2p application, when a message is being sent to
    multiple clients,
    > how does the instance performing the server function
    accomplish this?
    > Specifically, if the message is a large amount of data
    broken into
    > multiple packets, does it send all packets to client 1,
    then all packets
    > to client 2, etc? Or does it send packet 1 to all
    clients, then packet 2
    > to all clients, etc?

  • CSS 11500 sending RST

    I recently replaced a Local Director with a CSS 11500 (v 8.2). I have an application that uses port 80 to send SOAP heartbeats at 1 minute intervals to a web server to maintain state. For some reason the CSS randomly decides to send RST to the client even though the backend service is active. In other words the the web server is not sending a RST. Is this an issue with flows? Load balancing schema? I did not have this issue with the Local Director.

    no. This is not possible.
    Gilles.

  • Terminating established connections with TCP RST packet

    Hi,
    I'm making a small application for our campus. The idea is to block certain connections from outside of our network to hosts in our network. I'm analyzing the connections using jpcap, this API also has a send method that sends packets, I thought that I can terminate the connections by sending RST packet to the source but it doesn't work, connections don't terminate. Obviously I don't get any error message from the host where I'm sending it to. I think that problem might be in sequence number or something like that. For now I set the sequence number of RST packet to (acknowledgment number from the last packet that comes from the outside host+1) is this where I'm going wrong?
    Cheers.

    This isn't really a Java question, although I'm sure ejp will have some good advice.
    I suggest you look at the relevant TCP RFCs.

  • Does ACE send a RST packet when it reach inactivity timeout?

    Hi experts
    I have some questions about ace's behavier.
    1st one is, Does ACE send a RST packet when it reach to inactivity timeout?
    2nd, Does half-closed timeout works properly with "no normalization"?
    3rd, How does ACE treat the packets there is no flows in conn table? Drop or forwarding?
    Thanks

    Hi Kilsoo,
    1st one is, Does ACE send a RST packet when it reach to inactivity timeout?
    ----yes, the ACE is going to send a RST if the client or server tries to do something over a connection that was already timed out
    3rd, How does ACE treat the packets there is no flows in conn table? Drop or forwarding?
    drops the connection
    Let me do some research for your second question
    Cesar R
    ANS Team

  • Sending an object from client to server always on button press

    What I need is to send an object from client to server but I need to make server wait until another object is sent. What I have is the JFrame where you put the wanted name and surname, then you create a User object with these details and on button press you send this object to the server. I just can't hold the connection because when I send the first object, server doesn't wait for another button click and throws EOFexception. Creating the while loop isn't helpfull as well because it keeps sending the same object again and again. The code is here
    public class ClientFrame extends JFrame {
        private JButton btnSend;
        private JTextField txfName;
        private JTextField txfSurname;
        public ClientFrame() {
            this.setTitle(".. ");
            Container con = this.getContentPane();
            con.setLayout(new BorderLayout());
            txfName = new JTextField("name");
            txfSurname = new JTextField("surname");
            btnSend = new JButton(new AbstractAction() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    SSLSocketFactory f =
                            (SSLSocketFactory) SSLSocketFactory.getDefault();
                    try {
                        SSLSocket c =
                                (SSLSocket) f.createSocket("localhost", 8888);
                        c.startHandshake();
                        OutputStream os = c.getOutputStream();
                        ObjectOutputStream oos = new ObjectOutputStream(os);
                        InputStream is = c.getInputStream();
                        ObjectInputStream ois = new ObjectInputStream(is);
                        boolean done = false;
                        while (!done) {
                            String first = txfName.getText();
                            String last = txfSurname.getText();
                            User u = new User();
                            u.setFirstName(first);
                            u.setLastName(last);
                            oos.reset();
                            oos.writeObject(u);
                            String str = (String) ois.readObject();
                            if (str.equals("rcvdOK")) {
                                System.out.println("received on the server side");
                            } else if (str.equals("ERROR")) {
                                System.out.println("ERROR");
                        //oos.writeObject(confirmString);
                        oos.close();
                        os.close();
                        c.close();
                    } catch (ClassNotFoundException ex) {
                        Logger.getLogger(ClientFrame.class.getName()).log(Level.SEVERE, null, ex);
                    } catch (IOException ex) {
                        System.err.println(ex.toString());
            btnSend.setText("send object");
            con.add(btnSend, BorderLayout.PAGE_START);
            con.add(txfName, BorderLayout.CENTER);
            con.add(txfSurname, BorderLayout.PAGE_END);
            this.pack();
            setSize(200, 150);
            setVisible(true);
    public class TestServer {
        public static void main(String[] args) {
            try {
                KeyStore ks = KeyStore.getInstance("JKS");
                ks.load(new FileInputStream(ksName), ksPass);
                KeyManagerFactory kmf =
                        KeyManagerFactory.getInstance("SunX509");
                kmf.init(ks, ctPass);
                SSLContext sc = SSLContext.getInstance("TLS");
                sc.init(kmf.getKeyManagers(), null, null);
                SSLServerSocketFactory ssf = sc.getServerSocketFactory();
                SSLServerSocket s = (SSLServerSocket) ssf.createServerSocket(8888);
                printServerSocketInfo(s);
                SSLSocket c = (SSLSocket) s.accept();
                InputStream is = c.getInputStream();
                ObjectInputStream ois = new ObjectInputStream(is);
                OutputStream os = c.getOutputStream();
                ObjectOutputStream oos = new ObjectOutputStream(os);
                boolean done = false;
                User u;
                  while(!done){
                    u = (User) ois.readObject();
                    String confirmString = "rcvdOK";
                    String errorString = "ERROR";
                    if (u != null) {
                        System.out.println(u.getFirstName() + " " + u.getLastName());
                        oos.writeObject(confirmString);
                    } else if (u == null) {
                        oos.writeObject(errorString);
                is.close();
                s.close();
                c.close();
            } catch (Exception e) {
                    System.err.println(e.toString());
    }Thanks for any help, btw this doesnt need to be via ssl, the problem would be the same using only http. Please anyone help me:)
    Edited by: Vencicek on 7.5.2012 2:19
    Edited by: EJP on 7/05/2012 19:53
    Edited by: Vencicek on 7.5.2012 3:36

    Current code fails because it's sending still the same entity again(using while loop)No it's not. You are creating a new User object every time around the loop.
    which makes the system freezeWhich means that you are executing network code in the event thread. Don't do that, use a separate thread. At the moment you're doing all that sending inside the constructor for ClientFrame which is an even worse idea: you can never get out of there to the rest of your client program. This is a program design problem, not a networking problem.
    and doesn't allow me to set new parameters of the new entityI do not understand.
    I need to find a way to keep Server running even when the client doesn't send any data and wait until the client doesnt press the send button again to read a new object.That's exactly what happens. readObject() blocks until data is received.

  • The client connection is not allowed on the internal edge of the Access Edge Server

    We are trying to setup Lync 2013 Edge Server, we have a setup as described below
    Real IPs for Lync Edge/WebConf/AV
    NAT of real IPs through Firewall Juniper to FE IP
    Topology with NAT (Firewall IP) IP enabled
    Certificates for with SAN for sip.acme.com etc (Both certs are Client Server Auth Templates from Internal MS CA)(Trusted) on Edge
    Route  192.215.0.0 255.255.255.0 gateway (=firewall internal ip address)
    But when external user connects and we are tracing the connection we are getting below error and lync client is 
    not able to connect.
    TL_INFO(TF_CONNECTION) [1]0AD8.0C30::09/07/2014-08:11:13.091.0000000f
    (SIPStack,SIPAdminLog::WriteConnectionEvent:SIPAdminLog.cpp(454))[4150361027] $$begin_recordSeverity: information
    Text: TLS negotiation started
    Local-IP: 192.215.0.xxx:5061 (Edge IP)
    Peer-IP: 192.215.0.xxx:1835 (Firewall IP)
    Connection-ID: 0x1100
    Transport: TLS 
    $$end_record
    TL_ERROR(TF_CONNECTION) [0]0AD8.0638::09/07/2014-08:12:45.279.0000005d (SIPStack,SIPAdminLog::WriteConnectionEvent:SIPAdminLog.cpp(389))[4150360514] $$begin_record
    Severity: error
    Text: The client connection is not allowed on the internal edge of the Access Edge Server
    Peer-IP: 192.xxx.0.xxx:1322 (firewall ip)
    Transport: TLS
    Result-Code: 0xc3e93d6b SIPPROXY_E_CONNECTION_INTERNAL_FROM_CLIENT
    $$end_record

    Hi pshetty,
    Check the following blog to deploy your Edge Server:
    http://jsilverdrake.blogspot.se/2012/04/publishing-lync-with-forefront-tmg-part_25.html
    Note: Microsoft is providing this information as a convenience to you. The sites are not controlled by Microsoft. Microsoft cannot make any representations regarding the quality, safety, or suitability of any software or information found there. Please make
    sure that you completely understand the risk before retrieving any suggestions from the above link.
    You need to create persistent static routes on the internal interface to all internal networks.
    Regards,
    Lisa Zheng
    Lisa Zheng
    TechNet Community Support

  • Lync 2013 client can't connect externally to edge server

    So I have my edge server set up in the DMZ. 3 ips bound to an interface for external connectivity.
    sip.domain.org (A record)
    webconf.domain.org (A record)
    av.domain.org (A record)
    _sip.tls.domain.org:443 pointing to the same IP as sip.domain.org
    External Lync Clients should be using this srv record to auto-connect, correct?
    I have purchased a thawte ssl cert and bound it correctly to the external interface.  Internal interface is a PKI internal CA cert. Sometimes when doing a testconnectivity from MS, it comes up stating " The certificate couldn't be validated because
    SSL negotiation wasn't successful", when other times I run the test and it states that it validates the cert correctly, analyzing the cert - no problems found, etc, all looks good and then fails at "couldn't sign in Error Unknown (0x80131500) 
    Error type: TLSFailureException.
    Not sure where to start looking or why it shows the cert is good sometimes and others not.
    Also when I launch the Lync Server Admin Console, Under Topology,  my edge server is showing Replication with a red X.  Don't know what to look for either.

    Hi jackl2001,
    By default, no policies are configured to support external user access, including remote user access, federated user access, even if you have already enabled external user access
    support for your organization. To control the use of external user access, you must configure one or more policies, specifying the type of external user access supported for each policy.
    Click on the link below for more details.
    Managing federation and external access to Lync Server 2013
    http://technet.microsoft.com/en-us/library/gg520966.aspx
    Best regards,
    Eric

  • Syslog server showing: Fatal error: : unable to send NTP packet to ::ffff:172.23.254.89.

    I am working o a case where a syslog server is showing the following log:
    "DW2WLC01.SYS: *sntpReceiveTask: #SNTP-3-FATAL_ERROR_OCCURED: sntp_main.c:233 Fatal error: : unable to send NTP packet to ::ffff:172.23.254.89."
    I have been doing reasearch around but I have not found cases related or log explanations, the only thing I found related is bug CSCug11763. However this bug doesn't offer further details.
    5508 WLC is running 7.6.100
    Anyone has any idea about the possible meanings of that log?

    Hi, Please try to disable IPv6 and then check it:
    (WLC) >config ipv6 disable
    If still same error comes then  please raise a TAC case.
    Regards
    Dont forget to rate helpful posts

  • I need send and receive emails for edge server 2010

    i have exchnage 2010 in our orgnization now working fine , i can send and receive emails for hub and also we have tmg and fortigate firewall(200B) , already install and configuration edge server(configure edge subscribtion file and edge sync) but still message
    sent form hub and also receive form hub , what to do to receive from edge ? please help me i have 3 month search to fix his problem.

    Hello,
    I recommend you use the Test-EdgeSynchronization cmdlet to check if the subscribed Edge Transport servers have a current and accurate synchronization status. If you have configured EdgeSynchronization successfully, please delete send connector
    on Hub transport server.
    Please uncheck "anonymous users" on receive connector for Hub server.
    Please follow the ExchangeITPro's suggestion to check DNS MX record.
    Cara Chen
    TechNet Community Support

  • How to connect Lync 2013 client with OCS 2007 R2 Edge server

    Hi,
    We have OCS 2007 R2 Edge server for external & OCS 2007 R2 FE Server for internal access in our environment.
    We able to access internally Lync2013 clients with OCS 2007R2 server, however from external we cannot access Lync2013 client with OCS2007 R2 server.
    Is there any patch or registry key trick to access OCS from lync2013 client externally? We cannot immediately migrate to Lync2013 server from OCS.
    Any help
    MD

    Hi,
    I suggest you still use OCS 2007 R2 client to login OCS 2007 R2 Server untill finishing migration to Lync Server 2013, as using Lync client with OCS 2007 R2 Server will offer a pretty limited experience.
    Here is a great blog about Lync 2010 Client unsupported with OCS, it is for Lync 2010 client but similar for Lync 2013 client:
    http://blog.schertz.name/2010/09/lync-client-unsupported-ocs/
    Note: Microsoft is providing this information as a convenience to you. The sites are not controlled by Microsoft. Microsoft cannot make any representations regarding the quality, safety, or suitability of any software or information found there.
    Please make sure that you completely understand the risk before retrieving any suggestions from the above link.
    Best Regards,
    Eason Huang
    Eason Huang
    TechNet Community Support

  • How to send multiple objects from Client to Server

    Hi
    I have a simple Client - Server architecture. I am trying to send 5 objects from Client to the Server which the server would operate on.
    In the past I've used PrintWriter to pass Strings from Client to Server but now when I am dealing with multiple Objects and PrintWriter not allowing sending of Arrays or ArrayList, how can I send these from the Client to the Server? What would be a good writer to use for this purpose?
    Thanks!

    Thanks, I am looking into ObjectOutputStream but from the API it appears I can only send 1 object at a time. I need to send 5 objects per transaction and then send the next group of 5 objects for another transaction.
    Could you clarify some more on how to put these objects together as a single Object perhaps?
    Thanks

  • After adding Edge server clients display a notification error

    We have a fairly small deployment that is geared towards all but enterprise voice features. It consists of a Front-End, Edge, Reverse Proxy, and an Office Web Apps server. Yesterday I added the Edge server to the topology and everything still works fine
    but there's an exclamation point on the Lync icon in the System Tray that states, "Server issues are affecting calls. Try signing out and back in again." In the client on the bottom right there is a notification icon that says, "Limited External
    Calling".
    Naturally, I don't care that calls aren't working because we aren't using that side of Lync. The Edge server and Front-end are able to ping one another so they appear to be communicating just fine. All user accounts say "PC-to-PC only" in their
    Telephony field.  How do I suppress this error?

    How far along are you in the edge deployment?  Does the edge seem fully functional otherwise?
    Please remember, if you see a post that helped you please click "Vote As Helpful" and if it answered your question please click "Mark As Answer".
    SWC Unified Communications

Maybe you are looking for

  • Syncing audio to clips after making the cuts -Adobe premiere pro cs 5.5

    Hello Everyone, I am using adobe premeire pro cs 5.5. I have adobe prodution premium suite. I have completed my cuts with a bunch of clips in each sequence. None of them had audio, so I made all the cuts without the audio. Now I have got all the same

  • How can i add a language for spellcheck in Mail?

    The spell check in the Mac Mail program does not include the Norwegian language - however in the Tekst option panel it says that i can add the word list files by copying the .aff and .dic files and adding them to the spelling/library-file. Is this (.

  • K7T 266 PRO2 will not recognize xp 1700+

    Hello I have a K7T 266 PRO2 version 2 that has been flashed to the latest bios for that board.It should see up to a 2200+ xp processor.The board has been running a 900 thunderboard processor for 5 years now. I did change the bios to 133 but it still

  • Restrict values for F4 on field in Selection-screen

    Hi, For f4 on particular field I am getting list of values. These values are fixed in Value Range of DOMAIN of that field. There are 26  values fixed for that DOMAIN. Now what I need is I need to restrict 26th value from displaying on F4 for that fie

  • Error when syncing photos...

    Error when syncing photos. When I synchronize my IPad 1 (IOS 4.5.3) with Macbook (OS X 10.5.8) as I always do, an error saying that some pictures could not be synchronized because de IPad can not open those pictures!. Always copied from one device to