Solved rc.d/netif does not start igb interface with static address

Code:
$ uname -a
FreeBSD dev.xxxxxx.xxx 11.2-RELEASE FreeBSD 11.2-RELEASE #0 r335510: Fri Jun 22 04:32:14 UTC 2018     root@releng2.nyi.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64
$ cat /etc/rc.conf
hostname="dev.xxxxxx.xxx"
defaultrouter="xxx.xxx.xxx.33"
ifconfig_ibg0="inet xxx.xxx.xxx.36 netmask 255.255.255.248"
ifconfig_igb0_ipv6="inet6 accept_rtadv"
ifconfig_igb1="DHCP"
ifconfig_igb1_ipv6="inet6 accept_rtadv"
sshd_enable="YES"
ntpd_enable="YES"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="AUTO"
postgresql_enable="YES"
nginx_enable="YES"
php_fpm_enable="YES"
plexmediaserver_enable="YES"
$ sudo reboot

After reboot interface does not have address:

Code:
$ifconfig igb0
igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=6403bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
    ether d0:50:99:c1:34:91
    hwaddr d0:50:99:c1:34:91
    inet6 fe80::d250:99ff:fec1:3491%igb0 prefixlen 64 scopeid 0x1
    nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>
    media: Ethernet autoselect (1000baseT <full-duplex>)
    status: active
$ netstat -rn -f inet | grep default
default            10.0.0.1           UGS        igb1

Restarting the interface has about a 15s delay and doesn't work either:

Code:
$ sudo time service netif restart igb0
Stopping Network: igb0.
igb0: flags=8c02<BROADCAST,OACTIVE,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=6403bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
    ether d0:50:99:c1:34:91
    hwaddr d0:50:99:c1:34:91
    nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
    media: Ethernet autoselect (1000baseT <full-duplex>)
    status: active
Starting Network: igb0.
igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=6403bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
    ether d0:50:99:c1:34:91
    hwaddr d0:50:99:c1:34:91
    inet6 fe80::d250:99ff:fec1:3491%igb0 prefixlen 64 scopeid 0x1
    nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>
    media: Ethernet autoselect (1000baseT <full-duplex>)
    status: active
       13.45 real         0.06 user         0.10 sys

But it will work manually:

Code:
$ sudo ifconfig igb0 inet xxx.xxx.xxx.36 netmask 255.255.255.248
$ sudo route change default xxx.xxx.xxx.33
change net default: gateway xxx.xxx.xxx.33
$ ifconfig igb0
igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=6403bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
    ether d0:50:99:c1:34:91
    hwaddr d0:50:99:c1:34:91
    inet6 fe80::d250:99ff:fec1:3491%igb0 prefixlen 64 scopeid 0x1 
    inet xxx.xxx.xxx.36 netmask 0xfffffff8 broadcast xxx.xxx.xxx.39 
    nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>
    media: Ethernet autoselect (1000baseT <full-duplex>)
    status: active
$ netstat -rn -f inet | grep default
default            xxx.xxx.xxx.33      UGS        igb0

Code:
$ dmesg | grep igb0
igb0: <Intel(R) PRO/1000 Network Connection, Version - 2.5.3-k> port 0xe020-0xe03f mem 0xfb120000-0xfb13ffff,0xfb144000-0xfb147fff irq 26 at device 0.0 numa-domain 0 on pci2
igb0: Using MSIX interrupts with 9 vectors
igb0: Ethernet address: d0:50:99:c1:34:91
igb0: link state changed to UP
igb0: PHY reset is blocked due to SOL/IDER session.
igb0: Bound queue 0 to cpu 0
igb0: Bound queue 1 to cpu 1
igb0: Bound queue 2 to cpu 2
igb0: Bound queue 3 to cpu 3
igb0: Bound queue 4 to cpu 4
igb0: Bound queue 5 to cpu 5
igb0: Bound queue 6 to cpu 6
igb0: Bound queue 7 to cpu 7
igb0: netmap queues/slots: TX 8/1024, RX 8/1024
 
Wow. I can't even count how many times I've stepped through that config character by character. And I still missed it. Incredibly embarassing.
 
Back
Top