Laptop with 2 NICs for 2 different subnets but always uses the NIC with prioriy 1

Salam ELIAS 302 Reputation points
2026-10-11T14:09:08.0833333+00:00

Hi, I have a laptop and desktop both have 2 NICs, 1 is 1Gbs used for local subnet, the 2nd NIC is 10Gbs I need it for accessing the internet

1 NIC is in a 192.168.1.0/24 attached tothe router which serves as a DHCP and I have a local DNS to server the local subnet as mydns.mynetwork.net.

2nd NIC is in the 192.168.0.0/24 attached to the internet provider box directly (in order to be able to have more than 1Gbs when I browse internet). Here is a snapshot of the network

User's image

DNS for both machines on NIC 1 is my internal DNS in 192.168.1.0/24. With both NICs active, I cant reach any machine in the local subnet 192.168.1.0/24 but when I disable the 2nd NIC everyting goes alright and can ping any machine in local network.

I understand that it is not possible that both NICs have a gateway so NIC 1 is witout gateway but I did a rout add to 192.168.1.0/24 using the router internal IP 192.168.1.1 as the gateway.

when I do a route on the laptop I get

IPv4 Route Table

===========================================================================

Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.6 30 0.0.0.0 0.0.0.0 192.168.0.254 192.168.0.2 25 127.0.0.0 255.0.0.0 On-link 127.0.0.1 331 127.0.0.1 255.255.255.255 On-link 127.0.0.1 331 127.255.255.255 255.255.255.255 On-link 127.0.0.1 331 192.168.0.0 255.255.255.0 On-link 192.168.0.2 281 192.168.0.2 255.255.255.255 On-link 192.168.0.2 281 192.168.0.255 255.255.255.255 On-link 192.168.0.2 281 192.168.1.0 255.255.255.0 On-link 192.168.1.6 281 192.168.1.6 255.255.255.255 On-link 192.168.1.6 281 192.168.1.255 255.255.255.255 On-link 192.168.1.6 281 224.0.0.0 240.0.0.0 On-link 127.0.0.1 331 224.0.0.0 240.0.0.0 On-link 192.168.1.6 281

On the desktop

IPv4 Route Table

Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 192.168.0.254 192.168.0.182 2 127.0.0.0 255.0.0.0 On-link 127.0.0.1 331 127.0.0.1 255.255.255.255 On-link 127.0.0.1 331 127.255.255.255 255.255.255.255 On-link 127.0.0.1 331 192.168.1.0 255.255.255.0 192.168.1.1 192.168.1.3 10 192.168.1.3 255.255.255.255 On-link 192.168.1.3 263 192.168.2.0 255.255.255.0 192.168.1.1 192.168.1.3 8

When I ping desktop (whic has 192.168.1.3 IP )from laptop which has 192.168.1.6 IP , desktop respond with the other subnet IP

User's image

whereas I ping laptop from desktop it also responds on the other subnet NIC but with different behavior

User's image

Am I missing something in NICs configurations?

Thanks for your help

Windows for business | Windows Client for IT Pros | Networking | Network connectivity and file sharing
0 comments No comments

2 answers

Sort by: Most helpful
  1. Daphne Huynh (WICLOUD CORPORATION) 1,900 Reputation points Microsoft External Staff Moderator
    2026-10-12T04:13:27.6433333+00:00

    Welcome to Microsoft Q&A!

    Thank you for taking the time to provide the routing tables and network topology

    From the information you shared, having two NICs on different subnets is not necessarily the problem. The main thing I would look at is the routing configuration and DNS resolution.

    Windows first uses the most specific route that matches the destination. When there are competing routes with the same prefix length, the route and interface metrics help determine which path is preferred.

    In your setup, the intended configuration appears to be:

    • 192.168.1.0/24 NIC: local network access
    • 192.168.0.0/24 10-Gbps NIC: Internet access
    • The 192.168.0.x NIC: default gateway for Internet traffic

    1. You should not need a static route for 192.168.1.0/24

    On the laptop, you already have this route:

    192.168.1.0 255.255.255.0 On-link 192.168.1.6

    This is important because it tells Windows that 192.168.1.0/24 is directly reachable through the NIC with address 192.168.1.6.

    Therefore, traffic from 192.168.1.6 to 192.168.1.3 should go directly between those interfaces. It does not need to pass through the 192.168.1.1 router.

    Unless 192.168.1.1 is needed to reach a different subnet, such as 192.168.2.0/24, I would remove the manually added route for 192.168.1.0/24.

    2. Check the laptop's two default routes

    One thing that stands out in the laptop's route table is that there are still two default routes:

    0.0.0.0/0 -> 192.168.1.1 metric 30

    0.0.0.0/0 -> 192.168.0.254 metric 25

    Even though you mentioned that the 192.168.1.x NIC does not have a default gateway configured, the routing table still shows a default route through 192.168.1.1.

    I would verify where that route is coming from and remove it if it is not required.

    For the design you described, I would aim for the following configuration:

    LAN NIC (192.168.1.x)

    • IP address: 192.168.1.x/24
    • Default gateway: None
    • Internal DNS as required

    10-Gbps/Internet NIC (192.168.0.x)

    • IP address: 192.168.0.x/24
    • Default gateway: 192.168.0.254
    • Used as the default route for Internet traffic

    Afterward, check route print again and confirm that you have only the intended default route through 192.168.0.254.

    3. NIC priority alone should not determine local subnet traffic

    I would not focus too much on making one NIC "priority 1."

    For example, when the laptop sends traffic to 192.168.1.3, Windows already has a specific 192.168.1.0/24 on-link route. That route is more specific than the 0.0.0.0/0 default Internet route.

    So, the expected behavior is:

    192.168.1.x traffic -> 1-Gbps LAN NIC

    Internet traffic -> 10-Gbps NIC -> 192.168.0.254

    Interface metrics become particularly relevant when Windows has multiple routes that are otherwise valid candidates for the same destination.

    4. Check DNS

    The screenshots suggest there may be a second issue involving name resolution.

    For example, if you run:

    ping desktopname
    

    And the name resolves to 192.168.0.182 instead of 192.168.1.3, Windows will ping the address returned by DNS. Changing the interface metric would not make the hostname resolve to the other address.

    I would compare:

    nslookup desktopname
    

    With:

    ping 192.168.1.3
    

    If ping 192.168.1.3 works but ping desktopname resolves to the 192.168.0.x address, then I would investigate the DNS records and DNS registration of the two adapters rather than adding more static routes.

    5. Suggested configuration

    Ultimately, I would try to get the routing table to follow this design:

    192.168.1.0/24 -> directly connected 1-Gbps NIC

    192.168.0.0/24 -> directly connected 10-Gbps NIC

    0.0.0.0/0 -> 192.168.0.254 through the 10-Gbps NIC

    If another internal subnet such as 192.168.2.0/24 really is reachable through the router at 192.168.1.1, then a specific route for that remote subnet would make sense, for example:

    route -p add 192.168.2.0 mask 255.255.255.0 192.168.1.1
    

    After making the changes, I would verify the behavior with:

    route print
    
    ping 192.168.1.3
    
    tracert 192.168.1.3
    
    nslookup desktopname
    

    I would start with the direct IP ping because it separates a routing problem from a DNS/name-resolution problem.

    The most important detail from the information you posted is that the laptop still shows a default route through 192.168.1.1, despite the intention for that NIC to have no default gateway. I would investigate and clean up that route first, then verify DNS registration if communication by hostname still uses the 192.168.0.x address.

    I hope this helps clarify what is happening with the two adapters.

    If you find it useful, please click Accept Answer.

    Thank you for choosing Microsoft Q&A.

    Was this answer helpful?

    0 comments No comments

  2. AI answer

    2026-10-11T14:09:32.04+00:00

    The issue is the routing design, not just NIC priority.

    Windows decides whether traffic is local or remote by comparing the destination IP with the local IP and subnet mask. For hosts on the same subnet, traffic is sent directly on-link and does not need a gateway. For remote networks, traffic is sent to a default gateway.

    In this setup, 192.168.1.x/24 traffic should stay on the 192.168.1.x NIC and should not be routed through 192.168.1.1 as a gateway. The route on the desktop:

    192.168.1.0    255.255.255.0    192.168.1.1    192.168.1.3
    

    is wrong for a directly connected subnet. That subnet should be on-link through the 192.168.1.x interface, not via the router.

    Also, having two default routes:

    • 0.0.0.0 -> 192.168.1.1
    • 0.0.0.0 -> 192.168.0.254

    causes Windows to prefer the lower-metric default route for non-local traffic. That affects which NIC is chosen for replies and can make the behavior look inconsistent.

    Use this configuration instead:

    1. On the 192.168.0.x NIC only, keep the default gateway 192.168.0.254 for Internet access.
    2. On the 192.168.1.x NIC, remove the default gateway.
    3. Do not add a route for 192.168.1.0/24 through 192.168.1.1. Since that subnet is directly attached, Windows should use the on-link route automatically.
    4. Verify both machines have a direct route like this for the local NIC:
         192.168.1.0    255.255.255.0    On-link    192.168.1.x
      
    5. If a wrong persistent route was added, delete it and recheck with route print.

    Expected result:

    • Access to local devices on 192.168.1.0/24 uses the 1 Gb NIC directly.
    • Internet traffic uses the 10 Gb NIC through 192.168.0.254.
    • Replies to 192.168.1.x peers should come from the 192.168.1.x address, not the 192.168.0.x address.

    One more important point: Windows behavior with multiple adapters can be unexpected, especially when routing is nonstandard. Microsoft also notes that multiple adapters do not provide load balancing by themselves, and routing table order determines which adapter is used.


    References:

    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.