Caution: This version of this document is no longer maintained. For the latest documentation, see

Original full TCP/IP stack (QNX Neutrino)


io-net ... -p tcpip tcpip_options ...

Runs on:



The tcpip_options are one or more of the following, separated by commas without whitespace:

Disable caching of packet buffers. This should only be needed as a debugging facility and should be used in conjunction with the -c0 option to io-net.
Use the external ip_en converter module (default is builtin).
Enable/disable fastforwarding path. This is useful for gateways. The value of num can assume the following values with the associated meanings:

The fastforward=1 option alone implicitly enables forwarding.

Enable forwarding of IPv4 packets between interfaces (default is off). The forward option alone implicitly enables fastforwarding.
Path to prepend to the traditional /dev/socket. This option is useful when running multiple stacks. Clients can use the SOCK environment variable to target a particular stack. For example:
io-net -i1 -ptcpip prefix=/alt
SOCK=/alt ifconfig -a
Use /dev/random as the source of random data. The default is to use the builtin pseudo-random generator.
Size of the receive context buffer, in bytes (default is 65536, minimum is 2048).
If using the SO_REUSEPORT socket option, deliver received unicast UDP packets to all sockets bound to the port. Default is to deliver only multicast and broadcast to all sockets.
Priority to run pure input packet processing at. Default is 21.
Maximum length as specified by SOMAXCONN, which is defined in <sys/socket.h>.
Size of each thread's stack, in bytes (default is 4096).
Disable (the more secure) extra validation of incoming RST segments on TCP connections.
If threads are exhausted, increment by this number up to threads_max (default is 25).
Maximum number of threads (default is 200).
Minimum number of threads (default is 15, minimum is 4).
Priority to run pure timeout operations at. Default is 20.


This version of the TCP/IP stack is the default when you install QNX Momentics; is a symbolic link to If you want to use the full stack for IPv6 packets, change into a link to the module.

This module supports the latest RFCs, including UDP, IP, TCP, and SCTP. It also supports forwarding, broadcast and multicast, hardware checksum support, routing sockets, Unix domain sockets, multilink PPP, PPPoE, supernetting (CIDR), NAT/IP filtering, ARP, ICMP, and IGMP, as well as CIFS, DHCP, AutoIP, DNS, NFS (v2 and v3 server/client), NTP, RIP, RIPv2, and an embedded web server. To create applications for this stack, you use the industry-standard BSD socket API. This version of the TCP/IP stack Also includes optimized forwarding code for additional performance and efficient packet routing when the stack is functioning as a network gateway.

Note: You can't umount Qnet and the full TCP/IP. You may, however, create an io-net producer module that supports unmounting.


The following io-net command uses the NE-2000 driver (, and the networking stack with IPSec and forwarding enabled. The ifconfig command configures the Ethernet interface to an IP address of and the route command set the default gateway to

io-net -dne2000 -ptcpip ipsec,forward
ifconfig en0 10.163
route add default 10.25

If you're running multiple stacks, clients can target a particular instance by using the SOCK environment variable, as follows:

io-net -i1 -ptcpip prefix=/alt
SOCK=/alt ifconfig -a

You can enable only forwarding by the following:

io-net -ptcpip forward,fastforward=0


The directory where, by default, drivers and protocol modules add entries. For more information, the documentation for io-net.

See also:

/etc/autoconnect, dd, /etc/hosts, ifconfig, io-net, netstat,,, ping, pppd, /etc/resolv.conf, route, sysctl

"Network drivers (devn-*)" and "Network protocol modules (npm-*)" in the Utilities Summary

getsockopt(), ioctl(), setsockopt(), and ROUTE in the Library Reference

TCP/IP Networking in the Neutrino User's Guide