Host router setup
Set up your host router.
The host is the remote computer you want to use. Choose one setup method for the router at the host's home or office.
You need the router administrator login. If someone else manages the network, ask them before changing it.
Method 1: Turn on automatic setup
- Open the router admin page from the host network. Find its address on the router label or app, or as “Router” / “Default gateway” in the operating system's network details.
- Enable UPnP and save. Find “UPnP” in the router settings. The menu name varies by router.
- Keep Luxwarp automatic mapping on. On the host Mac, open Luxwarp Settings → Network → UPnP and leave the default setting enabled.
Method 2: pfSense automatic setup
Allow the host's IPv4 address and listening port.
- Reserve the host IP. The example below uses
192.168.1.50. Replace it and port7000with the host's real reserved address and Host Port. - Configure port mapping. In Services → UPnP IGD & PCP, enable the service, UPnP IGD, and PCP/NAT-PMP. Choose the default-gateway WAN as the external interface and the host's LAN or VLAN as the internal interface.
- Restrict access, then save. Check Default Deny, enter the line below in ACL Entries, then select Save. Add a separate line for each host.
allow 1024-65535 192.168.1.50/32 7000
Restart Luxwarp on the host, then check for its IP and port under Status → UPnP IGD & PCP.
What about STUN?
With a public WAN address, leave Enable STUN off and Override WAN Address blank. STUN checks the public IP and incoming reachability; it does not open an upstream router. See Netgate’s official setup guide.
Method 3: Manual port forwarding
Before starting, check that the host router has a public WAN address. If it shows a private or CGNAT address, forwarding on this router alone cannot cross the upstream NAT.
- Reserve the host IP. For example, reserve
192.168.1.50in DHCP. This is an example, not your address. - Confirm the app port. On Mac, open Luxwarp Settings → Network → Host Port. The default is
7000; use your actual port if changed. - Add and save a port-forwarding rule. Find “Port Forwarding”, “NAT”, or “Virtual Server”. Use the example below with your host IP and port. Allow Luxwarp in the host firewall.
- Protocol
- UDP
- External port
- 7000
- Host IP (example)
- 192.168.1.50
- Internal port
- 7000
Finish and test
Save the router settings, restart Luxwarp on the host, and keep it online and signed in. Connect from a different network, such as a phone hotspot. If you are testing without a VPN, turn it off before starting a new connection.
Troubleshooting and advanced networks
Find the host IP and reserve it
Open the router admin page from the host network. Its address is usually shown on the router label or app, or as “Router” / “Default gateway” in network details. Find the host in the DHCP client list and reserve its current local IP before making a manual rule or pfSense ACL.
Several hosts
For manual forwarding, give each host a distinct matching app and external port, such as 7000 and 7001. For pfSense, add one narrow ACL per host. With automatic mapping, hosts may all keep internal port 7000; the router can assign different external ports.
Private WAN or CGNAT
For manual IPv4 forwarding, check the host router's WAN address. 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16 are private ranges; 100.64.0.0/10 is shared space commonly used for CGNAT. A rule on your router cannot cross an upstream NAT. Ask its administrator or ISP about a public address. Automatic NAT traversal may still work, so a private WAN does not prove every path will fail.
Manual external port and pfSense Static Port
If manual forwarding still stays on “Connecting”, Luxwarp must discover the same external port as your forwarding rule. Some routers change the outgoing source port. Advanced pfSense users can use Hybrid Outbound NAT with a targeted rule: Interface WAN, Protocol UDP, Source 192.168.1.50/32, Source port 7000, Translation WAN address, Static Port on, endpoint-independent mapping off. Keep the matching inbound rule limited to UDP 7000. See Netgate's port-forward and outbound NAT guides.
IPv6
A global IPv6 direct path requires IPv6 at both ends and a firewall rule allowing Luxwarp. ULA and link-local addresses are not reachable across the public internet.
Viewer network blocks UDP
Hotels, offices, hotspots, and VPNs may restrict UDP or use CGNAT. Try another permitted network or ask its administrator. Working web access does not prove UDP works.
Host missing or black screen
If the host is not listed, check the account, host power, sign-in, and that Luxwarp is running. If it connects but shows black, check the host Mac's Screen Recording permission before changing router settings.
Linux host port
The Linux host also defaults to UDP port 7000. If you launch it with --port, use that same port in any manual forwarding rule.
Luxwarp's UPnP switch does not enable UPnP on a router. UPnP on both routers is not mandatory, and NAT hole punching can work without UPnP or forwarding. Never use DMZ or disable a firewall. No setup guarantees a direct path on every network. Free, Personal, and Team use direct connections. Optional Enterprise relay is planned under a separate contract and is unavailable in the current beta.