OpenBSD Handbook

    Theme
    • Part I. Install & Configure
      • Introduction to OpenBSD
      • Installing OpenBSD
      • The X Window System
      • Networking on OpenBSD
      • System Configuration
      • OpenBSD Basics
      • Managing Software: Packages and Ports
    • Part II. Daily Operations
      • OpenBSD Desktop Environments
      • Multimedia
      • Printing
      • Linux Compatibility
      • Windows Compatibility
      • Games
    • Part III. System Administration
      • Virtualization
      • Storage and File Systems
      • Updating and Upgrading
      • Localization
      • The OpenBSD Boot Process
      • Security
    • Part IV. Networking & Daemons
      • Services
        • Database
          • MariaDB
          • PostgreSQL
          • Redis
          • memcached
        • Directory
          • YP (NIS)
          • LDAP
        • File
          • NFS
          • Samba
        • FTP Services
          • ftpd
          • ProFTPD
          • vsftpd
          • Pure-FTPd
          • TFTP
        • Mail
          • OpenSMTPD Mail Server
          • Dovecot IMAP and POP3 Server
          • Postfix
          • Exim
          • Rspamd
        • Name
          • Unbound DNS Resolver
          • NSD Authoritative DNS Server
          • BIND DNS Server
        • Networking
          • OpenBGPD
          • rad
          • DHCP on OpenBSD
          • slaacd
        • Web
          • Apache HTTP Server
          • nginx Web Server
          • OpenBSD httpd Web Server
          • relayd Reverse Proxy
        • Logging
          • syslogd
        • Monitoring
          • SNMP
        • Remote Access
          • Audit OpenSSH
          • OpenSSH Server
        • File Synchronization
          • rsync
        • Messaging
          • RabbitMQ Message Broker
        • Time
          • NTP Time Synchronization
      • PF
        • pfctl cheat sheet
        • PF Anchors
        • PF Filter Rules
        • PF Forwarding
        • PF Lists and Macros
        • PF Load Balancing
        • PF Logging
        • PF NAT
        • PF Options
        • PF Policies
        • PF Shortcuts
        • PF Tables
      • Advanced Networking
        • High Availability and State Replication
        • Multi-WAN and Policy-Based Routing
        • VPN and Cryptographic Tunneling
        • Classic and Lightweight Tunnels
        • IPv6 at Scale
        • QoS and Traffic Shaping
        • MPLS and Label Distribution
        • Network Services at Scale
        • Virtualization and Host Networking
        • Large-Scale L2 and L3 Design
        • Telemetry, Logging, and Flow Export
        • Hardening and Operational Safety
        • Reference Architectures
        • Troubleshooting Playbooks
      • Serial Communication
    • Part V. Miscellaneous
      • Virtualization Cheat Sheet
      • OpenBSD Cheatsheet
      • How-to Guides
        • Complete the First 30 Minutes After Installation
        • Check Hardware Compatibility Before Installing
        • Bootstrap Wi-Fi Firmware Without Ethernet
        • Set Up OpenBSD as a Laptop or Workstation
        • Configure Laptop Power Management
        • Run OpenBSD as a Virtual Machine Guest
        • Install OpenBSD on a VPS or Cloud Server
        • Install OpenBSD with Full-Disk Encryption
        • Troubleshoot Web Browsers on OpenBSD
        • Create an Administrator Account with doas and SSH Keys
        • Establish a Conservative Security Baseline
        • Manage OpenBSD with Ansible
        • Recover Access and Reset the Root Password
        • Collect OpenBSD Diagnostic Evidence
        • Configure Secure Remote Access with OpenSSH
        • Set Up WordPress on OpenBSD
        • Build Third-Party Software from Ports
        • Use FIDO Security Keys with OpenSSH
        • Build OpenBSD from Source
        • Configure Wi-Fi Roaming and Wired Failover
        • Dual-Boot OpenBSD on a UEFI System
        • Troubleshoot PF, NAT, and Routing
        • Automate OpenBSD Installation with Autoinstall and PXE
        • Route Multiple VLANs with PF
        • Configure a Road-Warrior WireGuard VPN
        • Troubleshoot Package Installation and Update Failures
        • Route IPv6 Networks without NAT
        • Schedule Recurring Maintenance
        • Plan a Docker Workload Migration to OpenBSD
        • Build a Mail Server with OpenSMTPD, Dovecot, and Rspamd
        • Build a Simple Router and Firewall
        • Monitor an OpenBSD System
        • Back Up and Restore an OpenBSD System
        • Configure softraid RAID1
        • Recover an OpenBSD System That Does Not Boot
        • Install Z shell (zsh)
      • OpenBSD for Linux Users
      • OpenBSD for FreeBSD Users
      • OpenBSD for macOS Users
    • OpenBSD FAQ
    • OpenBSD Architectures
      • OpenBSD Package Search

        dhcpcd-10.5.2v0

        Package search / Categories / Current snapshot
        โ† Back to search
        OpenBSD branch
        OpenBSD 8.0 releaseCurrent snapshot

        Current snapshot ยท amd64

        DHCPv4/IPv4LL/IPv6RS/DHCPv6 quad stack client

        Project homepage: https://roy.marples.name/projects/dhcpcd

        Description

        dhcpcd is a DHCPv4/IPv4LL/IPv6RS/DHCPv6 quad stack client. It will listen for new interfaces and carrier signals from the kernel so it can quickly configure each interface as it appears. dhcpcd has a powerful DHCP expression engine which makes it easy to decode future RFC DHCP options, or handroll your own.

        Package information

        Ports path
        net/dhcpcd
        Package architecture
        amd64
        Maintainer
        Stuart Henderson <stu.ports@spacehopper.org>
        Categories
        net
        Available flavors
        None listed
        Only for architectures
        aarch64, amd64, arm, i386, mips64, mips64el, powerpc, powerpc64, riscv64, sparc64, alpha, hppa

        Ports list build and test dependencies as well as runtime dependencies. pkg_add selects those needed for installation.

        Direct dependencies

        Build

        • archivers/xz STEM->=5.4.0
        OpenBSD README
        +-----------------------------------------------------------------------
        | Running dhcpcd on OpenBSD
        +-----------------------------------------------------------------------
        
        DHCPv6-PD (Prefix Delegation)
        =============================
        One common use of this package is to request Prefix Delegation from
        an ISP, which hands you one or more routable IPv6 subnet that can be
        assigned to interfaces facing your local network.
        
        Here is a sample configuration achieving this, fetching addresses over the
        pppoe0 interface and assigning it to multiple local networks.
        
        Also ensure that pf.conf(5) allows DHCPv6 traffic to pass, for example:
        
          pass out quick on pppoe0 proto udp from port dhcpv6-client \
              to port dhcpv6-server received-on none
        
          pass in quick on pppoe0 proto udp from port dhcpv6-server \
              to fe80::/10 port dhcpv6-client
        
        As usual with IPv6, you will also need to allow address resolution
        (with IPv6 this is done "in band" using icmp6 packets which must be allowed
        to pass PF - with IPv4 this is done by ARP which is ignored by PF).
        
        -- -- -- -- -- --
        ipv6only
        noipv6rs
        duid
        persistent
        option rapid_commit
        require dhcp_server_identifier
        
        # disable running any hooks; not typically required for simple DHCPv6-PD setup
        script ""
        
        # List interfaces explicitly so that dhcpcd doesn't touch others
        allowinterfaces pppoe0 em0 vlan3 vlan5
        
        interface pppoe0
        	# the following two lines tell dhcpcd to do router solicitation
        	# itself. don't use them if using "inet6 autoconf" (slaacd)
        	ipv6rs
        	ia_na 1
        
        	# request prefixes from the provider to use for downstream networks
        	ia_pd 2 em0/1 vlan3/2 vlan5/3
        -- -- -- -- -- --
        
        (By default, dhcpcd will request a prefix length that is the largest
        multiple of 8 that fits the networks. In some unusual cases, the
        provider may require a specific prefix length hint instead; to
        modify the above example for such a provider,
        "ia_pd 2/::/48 em0/1 vlan3/2 vlan5/3").
        
        In normal cases, you would use rad(8) to advertise these prefixes to
        clients. Put the following in /etc/rad.conf:
        
        -- -- -- -- -- --
        interface em0
        interface vlan3
        interface vlan5
        -- -- -- -- -- --
        
        And enable rad(8):
        
            # rcctl enable rad
        

        Package guides

        • Installing and updating packages

        Package details as JSON

        Report a bug