Plain English

Configures the **wired Ethernet** network parameters — static IP, subnet mask, default gateway, optional WINS server (legacy NetBIOS name resolution), and TCP listening port (default 9100 for raw print). **Settings are written to the print server's persistent NVRAM** and survive power cycles. **The new IP does not bind until the print server reboots** — either send `~JR` (Reset Printer) or power-cycle the printer manually after the format containing `^ND` finishes. Until reboot, the existing network configuration remains active and the new values are queued.

When to use

During first-time deployment to provision a printer on a static-IP fleet, or to reconfigure when relocating across subnets. **The connection drops the instant the printer reboots** — if you are sending `^ND` over the same Ethernet interface you intend to change, your TCP socket disconnects at `~JR`/power-cycle, and you must reconnect on the new IP. For DHCP environments, leave `^ND` alone (most firmware uses DHCP by default if no static config is set). For 802.11 wireless, use `^WA`/`^WS`/`^WP` instead — `^ND` only configures the wired interface. Always verify with `~HQES` (host status query) on the new IP after reboot.

Syntax

^NDip,subnet,gateway,wins,port

Parameters

ParameterDescription
ipStatic IPv4 address in dotted-quad form (e.g. `192.168.1.100`); must be unique on the subnet
subnetSubnet mask in dotted-quad form (e.g. `255.255.255.0`)
gatewayDefault gateway IP for off-subnet routing; `0.0.0.0` if none required
winsWINS server address for legacy NetBIOS name resolution; `0.0.0.0` to disable (typical on modern networks)
portTCP listening port for raw print jobs; default 9100 (industry standard, do not change unless your firewall requires it)

Example

^XA
^ND192.168.1.100,255.255.255.0,192.168.1.1,0.0.0.0,9100
^XZ
~JR

Configures static IP `192.168.1.100/24` with gateway `192.168.1.1`, no WINS, raw-print port 9100. The values are written to NVRAM during the format. The trailing `~JR` immediately reboots the printer so the new IP binds — without it, the old IP remains active until the next power cycle. Reconnect your sender to the new IP after reboot and verify with `~HQES`.

Try it in the playground View all ZPL commands