public void Redirect(string ip, int port)
 {
     if (kcp == null)
     {
         kcp = new KcpServer <KcpSocket>(0);
         kcp.Run(1);
     }
     if (link == null)
     {
         var address = IPAddress.Parse(ip);
         link = kcp.FindOrCreateLink(new IPEndPoint(address, port));
         link.Send(new byte[1], 0);
     }
     else
     {
         var add = IPAddress.Parse(ip);
         link.endpPoint.Address = add;
         link.endpPoint.Port    = port;
         var b = add.GetAddressBytes();
         unsafe
         {
             fixed(byte *bp = &b[0])
             link.ip = *(Int32 *)bp;
         }
         link.port = port;
         link.envelope.Clear();
         link.metaData.Clear();
     }
 }
        public void Connection(string ip, int port)
        {
            UniId = SystemInfo.deviceUniqueIdentifier;
            var address = IPAddress.Parse(ip);
            var kcp     = new KcpServer <KcpSocket>(0, 1);

            kcp.Run();
            link = kcp.FindOrCreateLink(new IPEndPoint(address, port));
            link.Send(new byte[1], 0);
        }
        public void Connection(string ip, int port)
        {
            if (kcp == null)
            {
                kcp = new KcpServer <KcpSocket>(0);
                kcp.Run(1);
            }
            var address = IPAddress.Parse(ip);

            link = kcp.FindOrCreateLink(new IPEndPoint(address, port));
            link.Send(new byte[1], 0);
        }
예제 #4
0
        public void Connection(string ip, int port)
        {
            var address = IPAddress.Parse(ip);

            server = new KcpServer <KcpSocket>(0);
            server.Run(1);
            server.OpenHeart();
            var remote = new IPEndPoint(address, port);

            link = server.FindOrCreateLink(remote);
            server.soc.SendTo(KcpListener.Heart, remote);
            server.RejectAutoConnections = true;
        }
예제 #5
0
        static void Main(string[] args)
        {
            LocalFile.loadConfig();
            SqlControll.Initial();
            var kcp = new KcpServer <KcpUser>(8899);

            kcp.OpenHeart();
            kcp.Run();
            while (true)
            {
                var cmd = Console.ReadLine();
                if (cmd == "Close" | cmd == "close")
                {
                    break;
                }
            }
        }