Every host on a network needs an IP address, and there are exactly two ways to give it one: type it in manually (static) or let a DHCP server assign it automatically (dynamic). Knowing both isn’t just a CCNA exam requirement — it’s the first troubleshooting question worth asking whenever a Windows machine can’t reach the network: is this address even what it should be?
This guide covers both methods on current Windows versions, matching Cisco-side DHCP and IPv6 configuration, and the troubleshooting steps that resolve the most common IP configuration problems.
Static IP Configuration
A static IP address is manually assigned and stays fixed until someone changes it. This requires deliberate planning — a subnet mask that matches the rest of the network (255.255.255.0 for a standard /24), and a gateway address that actually corresponds to a real router on that subnet — since a static address configured incorrectly won’t just fail to work, it can conflict with another device already using that address.
Best suited for: servers, printers, and other fixed resources where a predictable, unchanging address genuinely matters. Less practical for general end-user devices in larger networks, where the management overhead of manually tracking hundreds of static assignments outweighs the benefit.
Configuring a Static IP on Windows 10/11
- Open Settings (
Win + I), then go to Network & Internet > Ethernet (or Wi-Fi, depending on your connection type). - Click Change adapter options.
- Right-click the relevant network interface and select Properties.
- Select Internet Protocol Version 4 (TCP/IPv4) — or Internet Protocol Version 6 (TCP/IPv6) for IPv6 — and click Properties.
- Choose Use the following IP address, then enter:
- IP address (e.g.,
192.168.1.10) - Subnet mask (e.g.,
255.255.255.0) - Default gateway (e.g.,
192.168.1.1) - Preferred DNS server (e.g.,
8.8.8.8)
- IP address (e.g.,
- Click OK, then Close to apply. Restart the network adapter if the change doesn’t take effect immediately.

A Note on Legacy Windows Versions
Windows 7 (end of support since January 2020) and Windows 8.1 (end of support since January 2023) use an older Control Panel-based path — Start Menu > Control Panel > Network and Sharing Center > Change adapter settings, then right-click the interface, select Properties, and configure Internet Protocol Version 4 (TCP/IPv4) the same way. The underlying IP configuration concepts are identical; only the navigation path through the UI has changed. If you’re still managing Windows 7 or 8.1 systems, it’s worth flagging that they’re both past their security update lifecycle, which is a separate and more pressing concern than IP configuration itself.
Dynamic IP Configuration (DHCP)
Dynamic configuration uses DHCP to automatically assign an IP address, subnet mask, default gateway, and DNS servers — no manual entry required. In business environments, the DHCP server is commonly a Cisco Catalyst switch or ISR router; in home networks, it’s typically built into the router provided by the ISP.
Configuring Dynamic IP on Windows 10/11
- Open Settings > Network & Internet > Ethernet (or Wi-Fi) > Change adapter options.
- Right-click the relevant interface and select Properties.
- Select Internet Protocol Version 4 (TCP/IPv4) and click Properties.
- Choose Obtain an IP address automatically and Obtain DNS server address automatically.
- Click OK to save.
This is the default configuration on most Windows installations, so you’re typically confirming this setting rather than actively changing it — unless a device was previously configured statically and needs to be switched back.

Matching Cisco-Side DHCP Configuration
For the dynamic method above to actually work, a DHCP server needs to be properly configured somewhere on the network. On a Cisco router:
Router(config)# ip dhcp pool LAN_POOL
Router(dhcp-config)# network 192.168.1.0 255.255.255.0
Router(dhcp-config)# default-router 192.168.1.1
Router(dhcp-config)# dns-server 8.8.8.8
Router(dhcp-config)# exit
Router(config)# ip dhcp excluded-address 192.168.1.1 192.168.1.10
The excluded-address range reserves addresses for anything configured statically — like the servers and printers the static method above is meant for — so DHCP never accidentally hands out an address that’s already statically assigned elsewhere. Keeping this excluded range in sync with your actual static assignments is worth revisiting periodically, since it’s easy to add a new static server without remembering to update the DHCP exclusion accordingly.
Troubleshooting IP Configuration Issues
IP conflict — symptom: a “duplicate IP address” error, or two devices intermittently losing connectivity.
ipconfig /release
ipconfig /renew
If the conflict persists after renewing, check the DHCP server’s lease table directly for the conflicting address:
show ip dhcp binding
show ip dhcp conflict
A conflict that keeps recurring for the same address, even after a fresh ipconfig /renew, often points to a device somewhere on the network with that address hardcoded statically — the DHCP server keeps handing it out to a different client, unaware it’s already claimed, because the statically-configured device never actually requested it through DHCP in the first place. Cross-checking against your documented static assignments (or adding the address to the DHCP pool’s excluded range if it wasn’t already) resolves this permanently rather than just clearing the symptom temporarily.
No connectivity — symptom: the host can’t reach anything on the network at all.
ipconfig /all
Confirm the gateway and DNS settings shown actually match what’s expected for that subnet, then test basic reachability:
ping 192.168.1.1
A host with a valid-looking IP address but no gateway response usually points to either a genuinely wrong gateway address or a switch port assigned to the wrong VLAN — both worth checking before assuming a deeper network fault.
DHCP failure — symptom: no IP address gets assigned at all, and the device falls back to an APIPA address (169.254.x.x).
show ip dhcp binding
show ip dhcp pool
A DHCP pool that’s run out of available addresses is a common, easy-to-miss cause — show ip dhcp pool shows current utilization directly. Restarting the DHCP service or expanding the pool’s address range resolves this in most cases.

IPv6 Configuration Overview
IPv6 adoption continues to grow as IPv4 address exhaustion makes IPv6 increasingly necessary for new deployments, and it’s configured somewhat differently on both the Windows and Cisco sides.
Static IPv6 on a Cisco interface:
Router(config)# interface GigabitEthernet0/0
Router(config-if)# ipv6 address 2001:0db8::1/64
Router(config-if)# no shutdown
DHCPv6, which requires defining a pool before assigning it to an interface — a step worth being explicit about, since referencing an undefined pool name is a common configuration mistake:
Router(config)# ipv6 dhcp pool LAN_POOL
Router(config-dhcpv6)# address prefix 2001:0db8::/64
Router(config-dhcpv6)# exit
Router(config)# interface GigabitEthernet0/0
Router(config-if)# ipv6 dhcp server LAN_POOL
Verify the configuration:
show ipv6 interface brief
On the Windows side, IPv6 configuration follows the same UI path as IPv4 — selecting Internet Protocol Version 6 (TCP/IPv6) instead of version 4 in the adapter’s Properties dialog, with the same static/automatic choice available.
A Quick Note on Other Operating Systems
Since mixed-OS environments are common, it’s worth knowing the equivalent commands exist elsewhere too, even though this guide focuses on Windows specifically.
Linux, using the modern ip command:
sudo ip addr add 192.168.1.10/24 dev eth0
sudo ip route add default via 192.168.1.1
macOS, via the command line:
sudo networksetup -setmanual "Ethernet" 192.168.1.10 255.255.255.0 192.168.1.1
The underlying concepts — address, mask, gateway, DNS — stay identical across every platform; only the specific commands and configuration paths differ. This matters in practice more often than you’d expect, since a mixed environment with Windows servers and Linux infrastructure is the norm rather than the exception in most real deployments.
Configuring IP Addresses from the Command Line
The GUI path works fine for a single machine, but PowerShell is faster for scripting or working across multiple systems, and it’s worth knowing both approaches.
Set a static IP via PowerShell:
New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress 192.168.1.10 -PrefixLength 24 -DefaultGateway 192.168.1.1
Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses 8.8.8.8
Switch an interface back to DHCP:
Set-NetIPInterface -InterfaceAlias "Ethernet" -Dhcp Enabled
Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ResetServerAddresses
View current configuration:
Get-NetIPAddress -InterfaceAlias "Ethernet"
The older netsh command works too, and you’ll still encounter it in plenty of existing scripts and documentation:
netsh interface ip set address "Ethernet" static 192.168.1.10 255.255.255.0 192.168.1.1
netsh interface ip set dns "Ethernet" static 8.8.8.8
DHCP Reservations: A Middle Ground
For devices that need a predictable address without the overhead of manual static configuration on every individual machine, a DHCP reservation offers a practical middle ground — the server always hands out the same address to a specific device, identified by its MAC address, while the device itself still believes it’s using standard DHCP.
Configuring a reservation on a Cisco router, outside the main pool’s dynamic range:
Router(config)# ip dhcp pool RESERVED_PRINTER
Router(dhcp-config)# host 192.168.1.50 255.255.255.0
Router(dhcp-config)# client-identifier 0100.1122.3344.55
Router(dhcp-config)# exit
This gives you centralized control over which addresses are reserved and to whom — genuinely useful for printers, IP phones, and similar devices that benefit from a predictable address but don’t warrant the administrative overhead of static configuration on the device itself.
Static vs. Dynamic: Quick Comparison
| Factor | Static | Dynamic (DHCP) |
|---|---|---|
| Configuration effort | Manual, per device | Automatic |
| Best for | Servers, printers, network infrastructure | End-user devices, laptops, phones |
| Address changes | Never, unless manually reconfigured | Can change on lease renewal |
| Management at scale | High overhead in large networks | Scales easily |
| Conflict risk | Real, if not carefully tracked | Low, if the pool is correctly sized and excluded ranges are set |
FAQs
What is the difference between static and dynamic IP addresses?
A static IP address is manually assigned and remains fixed, making it well suited to servers and other devices that need a predictable, unchanging address. A dynamic IP address is assigned automatically by a DHCP server, which scales far better for general end-user devices in networks where manually tracking every address would be impractical.
How do I configure a static IP on a Cisco router interface?
Use ip address 192.168.1.1 255.255.255.0 under the relevant interface in configuration mode, followed by no shutdown to activate the interface. This is a foundational CCNA and CCNP skill, and it’s worth practicing alongside show ip interface brief to confirm the configuration actually took effect.
Why might DHCP fail to assign an IP address?
Common causes include a misconfigured or unreachable DHCP server, an exhausted address pool, or a client that simply can’t reach the server due to a network issue. Checking show ip dhcp pool for pool utilization and show ip dhcp binding for current leases is usually the fastest way to narrow down which of these is actually happening.
Can I use static IPs in a large network?
Static addressing remains possible in large networks but generally isn’t practical at scale, given the management overhead and conflict risk of tracking hundreds or thousands of manual assignments. A common middle ground is DHCP with reservations for specific critical devices — combining DHCP’s automation with the predictability static addressing provides for the systems that genuinely need it.
How do I verify my IP configuration on Windows?
Run ipconfig in Command Prompt for a quick summary, or ipconfig /all for full detail including DHCP status, lease information, and DNS servers. This is the first command worth running whenever a Windows host has any kind of connectivity issue, since it immediately shows whether the address, gateway, and DNS settings actually look correct.
Does Windows 12 change how IP addresses are configured?
No — as of now, Windows 12 hasn’t been released or officially announced by Microsoft, and current guidance continues to apply specifically to Windows 10 and 11. If a future Windows release does change this workflow, the underlying IP configuration concepts (static vs. dynamic, subnet mask, gateway, DNS) will remain the same regardless of how the settings UI is organized.