Beispiel #1
0
        static void Main(string[] args)
        {
            NatMgr.Init();
            SimpleUdpServce simple = new SimpleUdpServce();

            Console.WriteLine($"client start ip = {simple.local}");
            Shares.GetShare <IEnv>().value = EnvEnum.Client;
            simple.Start();
            Console.WriteLine("nat start");
            var remote = new IPEndPoint(IPAddress.Parse("123.118.106.73"), 25410);

            //using (Socket natSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp))
            //{
            //    natSocket.Bind(new IPEndPoint(IPAddress.Any, 25410));
            //    natSocket.SendTo(ResNat.SUCCESS.ToByteArray(), remote);
            //}
            simple.Send(new ReqNat()
            {
                address = remote.ValueAddress()
            }, new IPEndPoint(IPAddress.Parse("47.105.195.93"), 12000));
            //for (int i = 1; i < ushort.MaxValue; i++)
            //{
            //    simple.Send(ResNat.SUCCESS, new IPEndPoint(IPAddress.Parse("123.118.106.73"), i));
            //}
            Console.WriteLine("nat end");
            for (int i = 0; i < 10; i++)
            {
                Thread.Sleep(500);
                simple.Send(ResNat.NO_SERVER_FOUND, new IPEndPoint(IPAddress.Parse("123.118.106.73"), 25410));
            }
            Thread.Sleep(-1);
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            NatMgr.Init();
            SimpleUdpServce servce = new SimpleUdpServce(27015);

            servce.Start();
            Thread.Sleep(-1);
        }
Beispiel #3
0
        static void Main(string[] args)
        {
            NatMgr.Init();
            SimpleUdpServce servce = new SimpleUdpServce();

            servce.Start();
            while (true)
            {
                servce.Send(new TestMsg()
                {
                    a = 1
                }, new IPEndPoint(IPAddress.Parse("47.105.195.93"), 27015));
                Thread.Sleep(16);
            }
            //Thread.Sleep(-1);
        }