This episode covers DragonFlyBSD networking: interface configuration in /etc/rc.conf for DHCP and static, the ifconfig and route commands, laying out /etc/resolv.conf, the custom newbee network stack, plus interface aliases, VLAN, lagg bonding, bridge, and IPv6.

In episode 9 you created snapshots, dedup, and encryption on HAMMER2. Now we move to another dimension: getting this system to talk to the outside world. Networking is the lifeblood of modern servers — without correct network configuration, there's no SSH, no services, no remote management.
DragonFlyBSD handles networking in a distinctly BSD way: all persistent configuration lives in /etc/rc.conf, while direct operations are done with ifconfig and route. What's interesting is what runs beneath the surface: newbee — the custom network stack that's one of the architectural differentiators of DragonFlyBSD.
All persistent network configuration is written in /etc/rc.conf. Variable names follow the ifconfig_<interface> pattern. For DHCP:
ifconfig_em0="DHCP"For a static address, include the IP address, netmask, and broadcast:
ifconfig_em0="inet 192.168.1.10 netmask 255.255.255.0"
defaultrouter="192.168.1.1"defaultrouter sets the default gateway. After writing it, apply the configuration by restarting the network or rebooting:
service netif restart
service routing restartifconfig is the main tool for inspecting and changing interfaces directly:
ifconfig
ifconfig em0
ifconfig em0 inet 192.168.1.10 netmask 255.255.255.0ifconfig without arguments shows all active interfaces; ifconfig em0 details a single one. Changes made with ifconfig are temporary — for persistence they must be written in rc.conf.
Viewing and managing the routing table:
route show
route add default 192.168.1.1
route delete default 192.168.1.1route show displays the routing table; route add default sets the gateway. Most routing changes can be described in one sentence: "packets that don't know their destination are sent to the gateway."
Name resolution is handled by /etc/resolv.conf:
nameserver 1.1.1.1
nameserver 8.8.8.8
search internal.example.comWhen using DHCP, this file is usually filled in automatically. For static configuration, write it manually. Verify resolution with:
ping -c 2 dragonflybsd.org
host dragonflybsd.orgWorking beneath these familiar commands is newbee — DragonFlyBSD's custom network stack project. Its goal: replace the legacy network stack with a more modern design that's easier to understand and better supports virtualization and tunneling features. As an administrator, you don't see newbee directly — ifconfig, route, and standard tooling are still used. What you feel is stability and flexibility in advanced network scenarios, especially those involving the bridge, VLAN, and tunneling we're about to discuss.
One physical interface can hold many IP addresses — useful for multi-vhost hosting on a single NIC:
ifconfig em0 alias 192.168.1.11/24In rc.conf, add several ifconfig_em0_aliasN lines with increasing indexes.
VLANs split one physical switch into many logical networks. A VLAN interface is created by riding on top of a physical interface:
ifconfig vlan10 create
ifconfig vlan10 vlan 10 vlandev em0
ifconfig vlan10 inet 192.168.10.2/24In rc.conf, register the vlan interfaces:
cloned_interfaces="vlan10"
ifconfig_vlan10="vlan 10 vlandev em0 inet 192.168.10.2/24"lagg combines several NICs into one link for redundancy and bandwidth:
ifconfig lagg0 create
ifconfig lagg0 laggproto failover laggport em0 laggport em1
ifconfig lagg0 inet 192.168.1.10/24The failover mode is active-standby; loadbalance mode spreads the load. This is the foundation for reliable production networking — we'll dig into it in episode 16.
A bridge connects interfaces transparently, like a software switch — the basis for virtualization (episode 18) and home networking devices:
ifconfig bridge0 create
ifconfig bridge0 add em0 add tap0
ifconfig bridge0 upDragonFlyBSD has full IPv6 support. Configuration in rc.conf uses the inet6 form:
ifconfig_em0_ipv6="inet6 accept_rtadv"
ifconfig_em0="inet6 2001:db8::10/64"With accept_rtadv, your IPv6 address is taken from router advertisements (SLAAC) — the most common way to get IPv6 on modern networks.
Info
Network debugging starts at the lowest layer: ifconfig to check active interfaces, route show for routing, ping for connectivity, then dig/host for DNS. Walk these steps from the bottom up and you'll find the point of failure.
In this episode 10 you mastered basic DragonFlyBSD networking: DHCP and static interface configuration in /etc/rc.conf, ifconfig and route operations, laying out /etc/resolv.conf, an introduction to the newbee network stack, plus interface aliases, VLAN, lagg bonding, bridge, and IPv6.
Key takeaways:
ifconfig_<if> variables in /etc/rc.conf store the configuration; defaultrouter sets the gateway.ifconfig for inspection and direct changes; route show for the routing table./etc/resolv.conf handles DNS; ping and host for verification.In the next episode, episode 11, we return to data: data management & backup. You'll care for the filesystem with hammer2 info, hammer2 status, and fsck_hammer2, get to know dump/restore, then build a backup strategy with HAMMER2 snapshots, hammer2 send, tar, and rsync.