Why is my device marked as unknown device when using "Mono.Nat.NatUtility.StartDiscovery()"?

25 Views Asked by At

I'm using Unity to make a simple coop game for me and my friends, I saw that using Mono.Nat I could port forward without making the user do it manually, but when I tested it, my PC is always found as an "Unknown Device" and I can't create a port mapping with it. Can anyone help me understand why is my PC being found as an unknown device?

All i'm doing is this:

        void SetupPortForward()
        {
            Debug.Log("Forwarding ports");
            int l_PortToForward=m_Port;
            NatUtility.DeviceFound+=async(object Sender, DeviceEventArgs Args)=>{
                try
                {
                    INatDevice l_Device=Args.Device;
                    Debug.Log($"Device found: {l_Device.NatProtocol}");
                }
                catch(Exception e)
                {
                    Debug.Log(e.Message);
                }
                NatUtility.StopDiscovery();
            };
            NatUtility.UnknownDeviceFound+=async(object Sender, DeviceEventUnknownArgs Args)=>{
                try
                {
                    Debug.Log($"Unknown device found: {Args.Address} - {Args.Data}");
                }
                catch(Exception e)
                {
                    Debug.Log(e.Message);
                }
                NatUtility.StopDiscovery();
            };
            NatUtility.StartDiscovery();
        }
0

There are 0 best solutions below