Direct PC to PC link
Only use this if you play on WIFI.
About 9 minutes to read
Use this guide if you're running a dedicated Ethernet link directly between your two PCs — no switch or router in between.
Common reasons to use this setup:
- Your Gaming PC connects to the internet via Wi-Fi and you want NDI on a separate wired link.
- You're using 2x USB-to-Ethernet adapters to create a dedicated NDI link, separate from your main network.
- You've added dedicated PCIe Ethernet cards in one or both PCs specifically for the NDI connection.
Is this the right guide? If both PCs are plugged into the same router or network switch for NDI, use the Network Switch guide instead. This guide is for any setup where you have a dedicated point-to-point Ethernet connection between the two PCs that is separate from your regular network.
#Why This Setup Exists
The goal is to keep NDI traffic on its own dedicated link, completely isolated from your game/internet traffic. This matters in a few scenarios:
- Gaming PC on Wi-Fi: If NDI shares the Wi-Fi link with your game, both suffer. A direct Ethernet cable gives NDI its own path.
- USB-to-Ethernet adapters: If your PCs don't have spare Ethernet ports (or you want to keep your main Ethernet ports on your regular network), a pair of USB-to-Ethernet adapters creates a cheap dedicated link.
- Dedicated PCIe NICs: Same idea, just using internal cards instead of USB adapters. Maximum throughput and lowest latency for the dedicated link.
In all cases, NDI travels over the dedicated cable and your game traffic stays on your main network connection (Wi-Fi, router, etc.). The two never touch each other.
The catch: Windows doesn't automatically know which traffic should go where. If you skip the binding and IP isolation steps below, NDI traffic can route over your main network connection instead of the dedicated link — causing game ping spikes and NDI stuttering. This is the single most common issue with this setup.
#Prerequisites
Before starting:
- You have a way to connect the two PCs directly — either a standard Ethernet cable between built-in ports, two USB-to-Ethernet adapters, or dedicated PCIe NICs.
- Windows is fully updated on both PCs.
- System clocks are synced on both PCs: Settings → Time & Language → Date & Time → Sync now. Unsynced clocks can prevent the application from connecting to NDI streams.
#Step 1: Install OBS + NDI (Gaming PC Only)
Install all of the following on the Gaming PC:
- Download and install OBS Studio.
- Download and install the DistroAV 6.1.1 Plugin.
- Download and install NDI Runtime 6.
#Step 2: Set Up the Direct Ethernet Connection
#Connect the Hardware
Plug an Ethernet cable directly between the Gaming PC and the Script PC. This can be through:
- Built-in Ethernet ports (if you have a spare port not used for your main network)
- USB-to-Ethernet adapters — one on each PC, connected by a standard Ethernet cable
- Dedicated PCIe Ethernet cards — installed in one or both PCs
Any of these work. The key is that this link is separate from your main network connection.
#Assign Static IP Addresses
Since there's no router handing out IP addresses, you need to set them manually on both PCs.
On both PCs:
- Go to Network and Sharing Center → Change adapter settings (or search "Network connections" in Start).
- Right-click the adapter you're using for the direct link (this could be labeled "Ethernet", "Ethernet 2", or your USB/PCIe adapter name) and select Properties.
- Click Internet Protocol Version 4 (TCP/IPv4) → Properties.
- Select Use the following IP address and configure:
| Gaming PC | Script PC | |
|---|---|---|
| IP address | 192.168.2.10 | 192.168.2.11 |
| Subnet mask | 255.255.255.0 | 255.255.255.0 |
| Default gateway | (leave blank) | (leave blank) |
- Click OK to save.
Critical — Use a different subnet than your main network. If your main network (Wi-Fi or wired router) uses
192.168.1.x, your dedicated link must be on a different range like192.168.2.xor192.168.0.x. If both are on the same range, Windows can't tell which adapter to send NDI traffic through and will often choose the wrong one — causing game lag and NDI failures. Runipconfigin Command Prompt to check your main network IP, then pick a different third octet for the dedicated link.
#Verify Connectivity
Open Command Prompt on the Script PC and ping the Gaming PC:
ping 192.168.2.10
You should get replies. If not, check your cable and IP settings.
#Step 3: Configure OBS (Gaming PC)
#Video Settings
Navigate to Settings → Video and set:
- Base (Canvas) Resolution and Output (Scaled) Resolution to the same value:
800x600— lowest bandwidth, works for most games1024x768— good middle ground1280x720— highest fidelity of the three
- FPS: Set to Fractional FPS, at least
144/1. Ideal is240/1.
Your in-game resolution doesn't affect this. You can play at 1440p/4K while OBS outputs 800x600 through NDI.
#Advanced Settings
Navigate to Settings → Advanced:
- Color Format:
NV12
#Keep NDI on the Dedicated Link (Critical)
This is the step most people miss, and it's the reason NDI traffic ends up on Wi-Fi instead of the Ethernet cable.
The link must sit on its own subnet (192.168.2.x from Step 2), never the subnet your home network uses: that is what keeps NDI on the cable. OBS's Bind to IP setting does not change where NDI goes, so leave it on Default.
If NDI still goes over the wrong adapter (game ping spikes, NDI stutters) or the source does not show, install NDI Tools on both PCs. In NDI Access Manager on each PC, choose the dedicated link's network adapter, and on the Script PC add the Gaming PC's link IP (e.g.,
192.168.2.10) as a remote source.
#Game Capture Source
- In the Sources panel, click
+and select Game Capture. - Set Mode to
Capture Specific Windowand select your game (must be open). - Select the Game Capture source in Sources, then press
Ctrl + Dto center it.
#Enable NDI Output
- In the OBS menu bar, go to Tools → DistroAV NDI Settings.
- Check the box next to Main Output.
#Disable OBS Preview
Right-click on the OBS preview area and select the option to disable the preview to reduce GPU usage.
#Step 4: Create Firewall Rules
Since this is a direct connection, you want firewall rules that specifically allow NDI/OBS traffic over the Ethernet adapter only.
#On the Gaming PC — Allow OBS Outbound
- Press
Win + R, typewf.msc, press Enter (opens Windows Defender Firewall with Advanced Security). - In the left pane, click Outbound Rules.
- In the right pane, click New Rule.
- Select Program → Next.
- Browse to OBS:
C:\Program Files\obs-studio\bin\64bit\obs64.exe→ Next. - Select Allow the connection → Next.
- Check Private and Public, uncheck Domain → Next.
- Name it
OBS NDI over Ethernet→ Finish.
Then bind it to the Ethernet interface:
- Right-click the rule you just created → Properties.
- Go to the Advanced tab.
- Under Interface types, click Customize.
- Select Only for local area network (LAN) and uncheck Remote Access and Wireless.
- Click OK.
#On the Script PC — Allow Moonlight Inbound
Repeat a similar process, but for the application exe, and create an Inbound Rule instead. Make sure both Private and Public are checked.
Don't just disable the firewall. Whitelisting the specific exe with interface-bound rules is more reliable than disabling the firewall entirely. Users have confirmed that disabling the firewall sometimes causes more problems than keeping it on with proper rules.
#Step 5: Configure the Application (Script PC)
- Set Capture Mode to NDI-V2 in the capture tab.
- Load a community config from the configs channel — don't use the default config. Make sure the config is set to NDI mode.
- Press Start. You should see the stream appear.
#Troubleshooting
#"Capture: WAITING" — NDI stream not detected
This is the most common issue. Work through in order:
1. Make NDI use the dedicated link. Install NDI Tools on both PCs. In NDI Access Manager on each PC, choose the dedicated link's network adapter; on the Script PC, add the Gaming PC's link IP (e.g., 192.168.2.10) as a remote source. OBS's Bind to IP setting does not affect NDI.
2. Verify IP ranges are isolated. Run ipconfig on the Gaming PC. Your main network adapter and your dedicated link adapter should be on different subnets. If both show 192.168.1.x, change your dedicated link static IPs to 192.168.2.x as described above.
3. Firewall whitelisting. Make sure obs64.exe is whitelisted on the Gaming PC and moonlight.exe (or your app exe) is whitelisted on the Script PC — both for Private and Public networks. Keep the firewall on.
4. Sync clocks on both PCs. Settings → Time & Language → Date & Time → Sync now. This has been confirmed as a fix for cases where the NDI stream works in other tools but the application won't connect to it.
5. Windows updates. Make sure both PCs are fully updated. This is especially important when moving to a newer version of the application.
6. DistroAV enabled. OBS → Tools → DistroAV NDI Settings → confirm Main Output is checked.
7. Try Stop/Start. In the application, press Stop then Start again. Some users have had WAITING clear by simply toggling this.
8. Install .NET Runtime. Download from https://dotnet.microsoft.com/en-us/download, install, restart.
#Game ping spikes when NDI is running
This means NDI traffic is routing over your main network connection instead of the dedicated link. The fix:
- Bind OBS to the dedicated link IP (Step 3 above).
- Isolate IP ranges — your main network and the dedicated link must be on different subnets.
- Verify with
ping 192.168.2.11from the Gaming PC — if it responds, the dedicated link is working. Then check that game ping returns to normal.
#NDI works on old version but not new version
There is no difference in how NDI works between versions. The fix is the same checklist: update Windows, whitelist the exe (public + private), sync clocks, and use a community config set to NDI mode.
#Script PC has no internet
The Script PC doesn't need internet access for NDI to work — it only needs the dedicated link to the Gaming PC. If your Script PC needs internet for downloads/updates, temporarily connect it to your router or Wi-Fi, then switch back to the dedicated connection.
Network sharing (sharing your Gaming PC's internet to the Script PC through the dedicated link) is an untested configuration. If you're using Internet Connection Sharing, be aware it can interfere with NDI routing and static IP assignments. If you're having issues with this setup, disable ICS and use the static IP configuration described above.
#Full restart procedure
If nothing else works:
- Close everything on both PCs.
- Shut down both PCs completely.
- Start the Gaming PC first. Open OBS, verify NDI output is enabled and bound to the dedicated link IP.
- Start the Script PC. Launch the application, set capture to NDI, press Start.
#Quick Reference
| Setting | Value |
|---|---|
| Gaming PC dedicated link IP | 192.168.2.10 (must differ from main network subnet) |
| Script PC dedicated link IP | 192.168.2.11 |
| Subnet mask | 255.255.255.0 |
| NDI Access Manager | The dedicated link's adapter, on both PCs (if needed) |
| OBS Color Format | NV12 |
| OBS Resolution | 800x600, 1024x768, or 1280x720 |
| OBS FPS | 144/1 to 240/1 (fractional) |
| Firewall | Whitelist exe, interface-bound to LAN only |
Stuck on a step? Ask in the Moonlight Discord and a staff member will help.