Summary: | Does not work receiving an IP address via DHCP after stable/12 (r346874-r347140) | ||
---|---|---|---|
Product: | Base System | Reporter: | Vladyslav V. Prodan <admin> |
Component: | bin | Assignee: | freebsd-net (Nobody) <net> |
Status: | New --- | ||
Severity: | Affects Only Me | CC: | admin, john, mizhka |
Priority: | --- | Keywords: | needs-qa, regression |
Version: | 12.0-STABLE | ||
Hardware: | Any | ||
OS: | Any | ||
See Also: | https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=264908 |
Description
Vladyslav V. Prodan
2019-04-29 17:00:38 UTC
More specific. On another active network interface I tried to get an IP address. Only after manually assigning an IP address, dhclient found this interface and tried to get an IP address. # dhclient ix0 ifconfig: ioctl (SIOCAIFADDR): File exists ix0: not found exiting. [22:11]core:root-> /root# ifconfig ix0 inet 192.168.2.3/24 [22:11]core:root-> /root# dhclient ix0 ifconfig: ioctl (SIOCAIFADDR): File exists DHCPDISCOVER on ix0 to 255.255.255.255 port 67 interval 6 DHCPDISCOVER on ix0 to 255.255.255.255 port 67 interval 14 DHCPDISCOVER on ix0 to 255.255.255.255 port 67 interval 15 DHCPDISCOVER on ix0 to 255.255.255.255 port 67 interval 21 DHCPDISCOVER on ix0 to 255.255.255.255 port 67 interval 4 No DHCPOFFERS received. No working leases in persistent database - sleeping. # ifconfig ix0 ix0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=e53fbb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6> ether 0c:c4:7a:59:d4:e8 inet 192.168.2.3 netmask 0xffffff00 broadcast 192.168.2.255 media: Ethernet autoselect (10Gbase-Twinax <full-duplex,rxpause,txpause>) status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> After reboot: [22:28]core:root-> /root# truss /sbin/dhclient ix0 mmap(0x0,131072,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34362081280 (0x80023c000) issetugid() = 0 (0x0) openat(AT_FDCWD,"/etc/libmap.conf",O_RDONLY|O_CLOEXEC,00) = 3 (0x3) fstat(3,{ mode=-rw-r--r-- ,inode=3059,size=120,blksize=4096 }) = 0 (0x0) read(3,"# $FreeBSD: stable/12/libexec/rt"...,120) = 120 (0x78) close(3) = 0 (0x0) open("/usr/local/etc/libmap.d",O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC,0165) ERR#2 'No such file or directory' openat(AT_FDCWD,"/var/run/ld-elf.so.hints",O_RDONLY|O_CLOEXEC,00) = 3 (0x3) read(3,"Ehnt\^A\0\0\0\M^@\0\0\0Q\0\0\0\0"...,128) = 128 (0x80) fstat(3,{ mode=-r--r--r-- ,inode=21,size=209,blksize=4096 }) = 0 (0x0) pread(3,"/lib:/usr/lib:/usr/lib/compat:/u"...,81,0x80) = 81 (0x51) close(3) = 0 (0x0) openat(AT_FDCWD,"/lib/libutil.so.9",O_RDONLY|O_CLOEXEC|O_VERIFY,00) = 3 (0x3) fstat(3,{ mode=-r--r--r-- ,inode=2846,size=87800,blksize=88064 }) = 0 (0x0) mmap(0x0,4096,PROT_READ,MAP_PRIVATE|MAP_PREFAULT_READ,3,0x0) = 34362212352 (0x80025c000) mmap(0x0,94208,PROT_NONE,MAP_GUARD,-1,0x0) = 34362216448 (0x80025d000) mmap(0x80025d000,32768,PROT_READ,MAP_PRIVATE|MAP_FIXED|MAP_NOCORE|MAP_PREFAULT_READ,3,0x0) = 34362216448 (0x80025d000) mmap(0x800265000,45056,PROT_READ|PROT_EXEC,MAP_PRIVATE|MAP_FIXED|MAP_NOCORE|MAP_PREFAULT_READ,3,0x8000) = 34362249216 (0x800265000) mmap(0x800270000,8192,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_FIXED|MAP_PREFAULT_READ,3,0x13000) = 34362294272 (0x800270000) mmap(0x800272000,8192,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_FIXED|MAP_ANON,-1,0x0) = 34362302464 (0x800272000) munmap(0x80025c000,4096) = 0 (0x0) close(3) = 0 (0x0) openat(AT_FDCWD,"/lib/libcasper.so.1",O_RDONLY|O_CLOEXEC|O_VERIFY,00) = 3 (0x3) fstat(3,{ mode=-r--r--r-- ,inode=2794,size=31656,blksize=31744 }) = 0 (0x0) mmap(0x0,4096,PROT_READ,MAP_PRIVATE|MAP_PREFAULT_READ,3,0x0) = 34362212352 (0x80025c000) mmap(0x0,32768,PROT_NONE,MAP_GUARD,-1,0x0) = 34362310656 (0x800274000) mmap(0x800274000,12288,PROT_READ,MAP_PRIVATE|MAP_FIXED|MAP_NOCORE|MAP_PREFAULT_READ,3,0x0) = 34362310656 (0x800274000) mmap(0x800277000,12288,PROT_READ|PROT_EXEC,MAP_PRIVATE|MAP_FIXED|MAP_NOCORE|MAP_PREFAULT_READ,3,0x3000) = 34362322944 (0x800277000) mmap(0x80027a000,8192,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_FIXED|MAP_PREFAULT_READ,3,0x6000) = 34362335232 (0x80027a000) munmap(0x80025c000,4096) = 0 (0x0) close(3) = 0 (0x0) openat(AT_FDCWD,"/lib/libcap_syslog.so.1",O_RDONLY|O_CLOEXEC|O_VERIFY,00) ERR#2 'No such file or directory' openat(AT_FDCWD,"/usr/lib/libcap_syslog.so.1",O_RDONLY|O_CLOEXEC|O_VERIFY,00) ERR#2 'No such file or directory' openat(AT_FDCWD,"/usr/lib/compat/libcap_syslog.so.1",O_RDONLY|O_CLOEXEC|O_VERIFY,00) ERR#2 'No such file or directory' openat(AT_FDCWD,"/usr/local/lib/libcap_syslog.so.1",O_RDONLY|O_CLOEXEC|O_VERIFY,00) ERR#2 'No such file or directory' openat(AT_FDCWD,"/usr/local/lib/perl5/5.28/mach/CORE/libcap_syslog.so.1",O_RDONLY|O_CLOEXEC|O_VERIFY,00) ERR#2 'No such file or directory' openat(AT_FDCWD,"/lib/casper/libcap_syslog.so.1",O_RDONLY|O_CLOEXEC|O_VERIFY,00) = 3 (0x3) fstat(3,{ mode=-r--r--r-- ,inode=2806,size=15192,blksize=15360 }) = 0 (0x0) mmap(0x0,4096,PROT_READ,MAP_PRIVATE|MAP_PREFAULT_READ,3,0x0) = 34362212352 (0x80025c000) mmap(0x0,20480,PROT_NONE,MAP_GUARD,-1,0x0) = 34362343424 (0x80027c000) mmap(0x80027c000,4096,PROT_READ,MAP_PRIVATE|MAP_FIXED|MAP_NOCORE|MAP_PREFAULT_READ,3,0x0) = 34362343424 (0x80027c000) mmap(0x80027d000,4096,PROT_READ|PROT_EXEC,MAP_PRIVATE|MAP_FIXED|MAP_NOCORE|MAP_PREFAULT_READ,3,0x1000) = 34362347520 (0x80027d000) mmap(0x80027e000,8192,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_FIXED|MAP_PREFAULT_READ,3,0x2000) = 34362351616 (0x80027e000) mmap(0x800280000,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_FIXED|MAP_ANON,-1,0x0) = 34362359808 (0x800280000) munmap(0x80025c000,4096) = 0 (0x0) close(3) = 0 (0x0) openat(AT_FDCWD,"/lib/libc.so.7",O_RDONLY|O_CLOEXEC|O_VERIFY,00) = 3 (0x3) fstat(3,{ mode=-r--r--r-- ,inode=2732,size=1972992,blksize=131072 }) = 0 (0x0) mmap(0x0,4096,PROT_READ,MAP_PRIVATE|MAP_PREFAULT_READ,3,0x0) = 34362212352 (0x80025c000) mmap(0x0,4165632,PROT_NONE,MAP_GUARD,-1,0x0) = 34362363904 (0x800281000) mmap(0x800281000,520192,PROT_READ,MAP_PRIVATE|MAP_FIXED|MAP_NOCORE|MAP_PREFAULT_READ,3,0x0) = 34362363904 (0x800281000) mmap(0x800300000,1327104,PROT_READ|PROT_EXEC,MAP_PRIVATE|MAP_FIXED|MAP_NOCORE|MAP_PREFAULT_READ,3,0x7f000) = 34362884096 (0x800300000) mmap(0x800444000,61440,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_FIXED|MAP_PREFAULT_READ,3,0x1c3000) = 34364211200 (0x800444000) mmap(0x800453000,2256896,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_FIXED|MAP_ANON,-1,0x0) = 34364272640 (0x800453000) munmap(0x80025c000,4096) = 0 (0x0) close(3) = 0 (0x0) openat(AT_FDCWD,"/lib/libnv.so.0",O_RDONLY|O_CLOEXEC|O_VERIFY,00) = 3 (0x3) fstat(3,{ mode=-r--r--r-- ,inode=2832,size=101496,blksize=101888 }) = 0 (0x0) mmap(0x0,4096,PROT_READ,MAP_PRIVATE|MAP_PREFAULT_READ,3,0x0) = 34362212352 (0x80025c000) mmap(0x0,102400,PROT_NONE,MAP_GUARD,-1,0x0) = 34366529536 (0x80067a000) mmap(0x80067a000,40960,PROT_READ,MAP_PRIVATE|MAP_FIXED|MAP_NOCORE|MAP_PREFAULT_READ,3,0x0) = 34366529536 (0x80067a000) mmap(0x800684000,53248,PROT_READ|PROT_EXEC,MAP_PRIVATE|MAP_FIXED|MAP_NOCORE|MAP_PREFAULT_READ,3,0xa000) = 34366570496 (0x800684000) mmap(0x800691000,8192,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_FIXED|MAP_PREFAULT_READ,3,0x17000) = 34366623744 (0x800691000) munmap(0x80025c000,4096) = 0 (0x0) close(3) = 0 (0x0) mprotect(0x800271000,4096,PROT_READ) = 0 (0x0) mprotect(0x80027b000,4096,PROT_READ) = 0 (0x0) mprotect(0x80027f000,4096,PROT_READ) = 0 (0x0) mprotect(0x80044a000,36864,PROT_READ) = 0 (0x0) mprotect(0x800692000,4096,PROT_READ) = 0 (0x0) sysarch(AMD64_SET_FSBASE,0x7fffffffdb80) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) mprotect(0x80044a000,36864,PROT_READ|PROT_WRITE) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) mprotect(0x80044a000,36864,PROT_READ) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) readlink("/etc/malloc.conf",0x7fffffffd2a0,1024) ERR#2 'No such file or directory' issetugid() = 0 (0x0) __sysctl(0x7fffffffd208,0x2,0x7fffffffd204,0x7fffffffd210,0x0,0x0) = 0 (0x0) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34362212352 (0x80025c000) madvise(0x80025c000,4096,MADV_FREE) = 0 (0x0) munmap(0x80025c000,4096) = 0 (0x0) mmap(0x0,2097152,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366631936 (0x800693000) munmap(0x800693000,2097152) = 0 (0x0) mmap(0x0,4190208,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366631936 (0x800693000) munmap(0x800693000,1495040) = 0 (0x0) munmap(0x800a00000,598016) = 0 (0x0) mmap(0x0,32768,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366631936 (0x800693000) mmap(0x0,4194304,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34370224128 (0x800a00000) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34362212352 (0x80025c000) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366664704 (0x80069b000) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366668800 (0x80069c000) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366672896 (0x80069d000) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) mprotect(0x219000,4096,PROT_READ) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) socketpair(0x1,0x20000001,0x0,0x7fffffffe5b8) = 0 (0x0) pdfork(0x7fffffffe5b4,0x0) = 26526 (0x679e) close(4) = 0 (0x0) fcntl(3,F_GETFL,) = 6 (0x6) fcntl(5,F_GETFL,) = 2 (0x2) mmap(0x0,12288,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366676992 (0x80069e000) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366689280 (0x8006a1000) mmap(0x0,12288,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366709760 (0x8006a6000) select(4,0x0,{ 3 },0x0,0x0) = 1 (0x1) sendto(3,"l\0\0\0\0\0\0\0\0\0\0E\0\0\0\0\0"...,88,0,NULL,0) = 88 (0x58) select(4,{ 3 },0x0,0x0,0x0) = 1 (0x1) recvfrom(3,"l\0\0\^A\0\0\0\0\0\0\0h\0\0\0\0"...,19,0,NULL,0x0) = 19 (0x13) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366722048 (0x8006a9000) select(4,{ 3 },0x0,0x0,0x0) = 1 (0x1) recvfrom(3,"\^F\a\0\b\0\0\0\0\0\0\0\0\0\0\0"...,104,0,NULL,0x0) = 104 (0x68) select(4,{ 3 },0x0,0x0,0x0) = 1 (0x1) recvmsg(3,{NULL,0,[{"\0",1}],1,{{level=SOL_SOCKET,type=SCM_RIGHTS,data={0x04,0x00,0x00,0x00}}},24,0x40000},0x40000) = 1 (0x1) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366726144 (0x8006aa000) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366746624 (0x8006af000) fcntl(4,F_GETFL,) = 6 (0x6) close(5) = 0 (0x0) close(3) = 0 (0x0) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366767104 (0x8006b4000) select(5,0x0,{ 4 },0x0,0x0) = 1 (0x1) sendto(4,"l\0\0\0\0\0\0\0\0\0\0\M^G\0\0\0"...,154,0,NULL,0) = 154 (0x9a) select(5,{ 4 },0x0,0x0,0x0) = 1 (0x1) recvfrom(4,"l\0\0\0\0\0\0\0\0\0\0!\0\0\0\0\0"...,19,0,NULL,0x0) = 19 (0x13) select(5,{ 4 },0x0,0x0,0x0) = 1 (0x1) recvfrom(4,"\^C\^F\0\b\0\0\0\0\0\0\0\0\0\0\0"...,33,0,NULL,0x0) = 33 (0x21) select(5,0x0,{ 4 },0x0,0x0) = 1 (0x1) sendto(4,"l\0\0\0\0\0\0\0\0\0\0E\0\0\0\0\0"...,88,0,NULL,0) = 88 (0x58) select(5,{ 4 },0x0,0x0,0x0) = 1 (0x1) recvfrom(4,"l\0\0\0\0\0\0\0\0\0\0B\0\0\0\0\0"...,19,0,NULL,0x0) = 19 (0x13) select(5,{ 4 },0x0,0x0,0x0) = 1 (0x1) recvfrom(4,"\^C\^F\0\b\0\0\0\0\0\0\0\0\0\0\0"...,66,0,NULL,0x0) = 66 (0x42) openat(AT_FDCWD,"/var/run//dhclient",O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC,00) = 3 (0x3) openat(3,"dhclient.ix0.pid",O_WRONLY|O_NONBLOCK|O_CREAT|O_CLOEXEC,0644) = 5 (0x5) flock(5,LOCK_EX|LOCK_NB) = 0 (0x0) fstatat(3,"dhclient.ix0.pid",{ mode=-rw-r--r-- ,inode=50,size=0,blksize=131072 },0x0) = 0 (0x0) fstat(5,{ mode=-rw-r--r-- ,inode=50,size=0,blksize=131072 }) = 0 (0x0) ftruncate(5,0x0) = 0 (0x0) fstat(5,{ mode=-rw-r--r-- ,inode=50,size=0,blksize=131072 }) = 0 (0x0) cap_rights_limit(3,{ CAP_LOOKUP }) = 0 (0x0) cap_rights_limit(5,{ CAP_WRITE,CAP_SEEK_TELL,CAP_FTRUNCATE,CAP_FSTAT }) = 0 (0x0) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366787584 (0x8006b9000) access("/etc/localtime",R_OK) = 0 (0x0) open("/etc/localtime",O_RDONLY,017) = 6 (0x6) fstat(6,{ mode=-r--r--r-- ,inode=1636,size=2071,blksize=4096 }) = 0 (0x0) mmap(0x0,53248,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366808064 (0x8006be000) read(6,"TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0"...,41448) = 2071 (0x817) close(6) = 0 (0x0) mmap(0x0,24576,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366861312 (0x8006cb000) issetugid() = 0 (0x0) open("/usr/share/zoneinfo/posixrules",O_RDONLY,00) = 6 (0x6) fstat(6,{ mode=-r--r--r-- ,inode=230637,size=3519,blksize=4096 }) = 0 (0x0) mmap(0x0,53248,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366885888 (0x8006d1000) read(6,"TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0"...,41448) = 3519 (0xdbf) close(6) = 0 (0x0) open("/etc/dhclient.conf",O_RDONLY,0666) = 6 (0x6) fstat(6,{ mode=-rw-r--r-- ,inode=3051,size=277,blksize=4096 }) = 0 (0x0) read(6,"# $FreeBSD: stable/12/sbin/dhcli"...,4096) = 277 (0x115) read(6,0x8006c7000,4096) = 0 (0x0) close(6) = 0 (0x0) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366939136 (0x8006de000) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366959616 (0x8006e3000) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34366980096 (0x8006e8000) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367000576 (0x8006ed000) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367021056 (0x8006f2000) fstat(5,{ mode=-rw-r--r-- ,inode=50,size=0,blksize=131072 }) = 0 (0x0) ftruncate(5,0x0) = 0 (0x0) getpid() = 26371 (0x6703) pwrite(5,"26371",5,0x0) = 5 (0x5) socket(PF_INET,SOCK_DGRAM,0) = 6 (0x6) ioctl(6,SIOCGIFMEDIA,0x7fffffffe590) = 0 (0x0) close(6) = 0 (0x0) openat(AT_FDCWD,"/dev/null",O_RDWR,00) = 6 (0x6) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367041536 (0x8006f7000) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367045632 (0x8006f8000) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367049728 (0x8006f9000) fstatat(AT_FDCWD,"/etc/nsswitch.conf",{ mode=-rw-r--r-- ,inode=148,size=343,blksize=4096 },0x0) = 0 (0x0) open("/etc/nsswitch.conf",O_RDONLY|O_CLOEXEC,0666) = 7 (0x7) fstat(7,{ mode=-rw-r--r-- ,inode=148,size=343,blksize=4096 }) = 0 (0x0) read(7,"#\n# nsswitch.conf(5) - name ser"...,4096) = 343 (0x157) read(7,0x8006c7000,4096) = 0 (0x0) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367053824 (0x8006fa000) mmap(0x0,12288,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367074304 (0x8006ff000) mmap(0x0,12288,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367086592 (0x800702000) close(7) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) geteuid() = 0 (0x0) mmap(0x0,12288,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367098880 (0x800705000) open("/etc/spwd.db",O_RDONLY|O_CLOEXEC,00) = 7 (0x7) fstat(7,{ mode=-rw------- ,inode=3095,size=40960,blksize=40960 }) = 0 (0x0) read(7,"\0\^F\^Ua\0\0\0\^B\0\0\^P\M-a\0"...,260) = 260 (0x104) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367111168 (0x800708000) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367115264 (0x800709000) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367119360 (0x80070a000) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367123456 (0x80070b000) mmap(0x0,4096,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367127552 (0x80070c000) pread(7,"\0\^X\^O\M-x\^O\M-w\^O\M-r\^O"...,4096,0x6000) = 4096 (0x1000) pread(7,"\0\^Z\^O\M-{\^O\M->\^O\M-9\^Oz"...,4096,0x4000) = 4096 (0x1000) pread(7,"\0\^V\^O\M-{\^O\M-A\^O\M-<\^Og"...,4096,0x5000) = 4096 (0x1000) pread(7,"\0\^V\^O\M-{\^O\M->\^O\M-9\^Om"...,4096,0x7000) = 4096 (0x1000) pread(7,"\0\^P\^O\M-{\^O\M-/\^O\M-*\^Oo"...,4096,0x8000) = 4096 (0x1000) pread(7,"\0\^P\^O\M-{\^O\M-@\^O\M-;\^O~"...,4096,0x1000) = 4096 (0x1000) pread(7,"\0\^P\^O\M-{\^O\M->\^O\M-9\^Ol"...,4096,0x2000) = 4096 (0x1000) pread(7,"\0\^N\^O\M-|\^O\M-0\^O\M-,\^Oq"...,4096,0x3000) = 4096 (0x1000) close(7) = 0 (0x0) __sysctl(0x7fffffffe5c0,0x2,0x21d220,0x7fffffffe5b8,0x0,0x0) = 0 (0x0) fork() = 26828 (0x68cc) ifconfig: ioctl (SIOCAIFADDR): File exists wait4(-1,{ EXITED,val=0 },0x0,0x0) = 26828 (0x68cc) __sysctl(0x7fffffffe540,0x6,0x0,0x7fffffffe538,0x0,0x0) = 0 (0x0) __sysctl(0x7fffffffe540,0x6,0x8006c9000,0x7fffffffe538,0x0,0x0) = 0 (0x0) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367131648 (0x80070d000) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367152128 (0x800712000) mmap(0x0,20480,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,-1,0x0) = 34367172608 (0x800717000) select(5,0x0,{ 4 },0x0,0x0) = 1 (0x1) sendto(4,"l\0\0\0\0\0\0\0\0\0\0m\0\0\0\0\0"...,128,0,NULL,0) = 128 (0x80) select(5,{ 4 },0x0,0x0,0x0) = 1 (0x1) recvfrom(4,"l\0\0\0\0\0\0\0\0\0\0!\0\0\0\0\0"...,19,0,NULL,0x0) = 19 (0x13) select(5,{ 4 },0x0,0x0,0x0) = 1 (0x1) recvfrom(4,"\^C\^F\0\b\0\0\0\0\0\0\0\0\0\0\0"...,33,0,NULL,0x0) = 33 (0x21) ix0: not foundwrite(2,"ix0: not found",14) = 14 (0xe) write(2,"\n",1) = 1 (0x1) select(5,0x0,{ 4 },0x0,0x0) = 1 (0x1) sendto(4,"l\0\0\0\0\0\0\0\0\0\0g\0\0\0\0\0"...,122,0,NULL,0) = 122 (0x7a) select(5,{ 4 },0x0,0x0,0x0) = 1 (0x1) recvfrom(4,"l\0\0\0\0\0\0\0\0\0\0!\0\0\0\0\0"...,19,0,NULL,0x0) = 19 (0x13) select(5,{ 4 },0x0,0x0,0x0) = 1 (0x1) recvfrom(4,"\^C\^F\0\b\0\0\0\0\0\0\0\0\0\0\0"...,33,0,NULL,0x0) = 33 (0x21) exiting. write(2,"exiting.\n",9) = 9 (0x9) fstat(5,{ mode=-rw-r--r-- ,inode=50,size=5,blksize=4096 }) = 0 (0x0) unlinkat(3,"dhclient.ix0.pid",0x0) = 0 (0x0) close(5) = 0 (0x0) close(3) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) sigprocmask(SIG_BLOCK,{ SIGHUP|SIGINT|SIGQUIT|SIGKILL|SIGPIPE|SIGALRM|SIGTERM|SIGURG|SIGSTOP|SIGTSTP|SIGCONT|SIGCHLD|SIGTTIN|SIGTTOU|SIGIO|SIGXCPU|SIGXFSZ|SIGVTALRM|SIGPROF|SIGWINCH|SIGINFO|SIGUSR1|SIGUSR2 },{ }) = 0 (0x0) sigprocmask(SIG_SETMASK,{ },0x0) = 0 (0x0) exit(0x1) process exit, rval = 1 After updating the world to r347140, dhclient starts from the console. But still "SYNCDHCP" and "DHCP" in rc.conf do not work. It comes from /etc/rc.local: " sleep 30 dhclient bce0 " Use seems to use custom kernel and its configuration appears to miss driver for ix. ifconfig loads driver for you. Make sure you load driver with /boot/loader.conf so dhclient would find the interface. Also, manual ifconfig invocation seemingly brings the interface UP. Make sure you have corresponding "ifconfig_ifname" configuration lines in /etc/rc.conf for every interface you use. If this does not help, try using GENERIC kernel first and double-check your local changes. Try disabling them all and test with GENERIC and clean config first. Network drivers are built into the kernel: # kldstat -v | egrep '/(ix|bce)' 178 pci/ix 630 pci/ixl 99 pci/bce 179 pci/ixv Now I tried to change the guidelines for using DHCP in rc.conf. It was: ifconfig_DEFAULT="SYNCDHCP" ifconfig_bce0="DHCP" ifconfig_bce0_ipv6="inet6 accept_rtadv" ifconfig_bce1="DHCP" ipv6_activate_all_interfaces="YES" ifconfig_ix0="DHCP" ifconfig_bce0="mtu 9000 up" ifconfig_bce1="mtu 9000 up" ifconfig_bce2="mtu 9000 up" ifconfig_bce3="mtu 9000 up" ifconfig_igb0="mtu 9210 up" ifconfig_igb1="mtu 9210 up" ifconfig_ix0="mtu 9710 up descr 'Juniper qfx3500' " ifconfig_ix1="mtu 9710 up" It became: ifconfig_bce0="mtu 9000 up" ifconfig_bce1="mtu 9000 up" ifconfig_bce2="mtu 9000 up" ifconfig_bce3="mtu 9000 up" ifconfig_igb0="mtu 9210 up" ifconfig_igb1="mtu 9210 up" ifconfig_ix0="mtu 9710 up descr 'Juniper qfx3500' " ifconfig_ix1="mtu 9710 up" ifconfig_DEFAULT="SYNCDHCP" ifconfig_bce0="DHCP" ifconfig_bce0_ipv6="inet6 accept_rtadv" ifconfig_bce1="DHCP" ipv6_activate_all_interfaces="YES" ifconfig_ix0="DHCP" With this latest version of the rc.conf file, DHCP is working in rc.conf. # ps -auxww | grep dhc root 52999 0,0 0,0 11388 2704 - Is 20:34 0:00,00 dhclient: system.syslog (dhclient) root 54338 0,0 0,0 11692 2792 - Is 20:34 0:00,00 dhclient: bce0 [priv] (dhclient) _dhcp 81677 0,0 0,0 11860 2916 - ICs 20:34 0:00,00 dhclient: bce0 (dhclient) root 89835 0,0 0,0 11400 2708 - Is 20:34 0:00,00 dhclient: system.syslog (dhclient) root 91787 0,0 0,0 11688 2792 - Is 20:34 0:00,00 dhclient: ix0 [priv] (dhclient) _dhcp 92922 0,0 0,0 11692 2800 - ICs 20:35 0:00,00 dhclient: ix0 (dhclient) root 2925 0,0 0,0 11464 2912 0 S+ 20:35 0:00,00 grep --color=auto dhc It turns out a number of ifconfig options in rc.conf is not commutative and depends on the order of the call/assignment. As documented in rc.conf(5) manual page:
> Options are set with "name=value" assignments that use sh(1) syntax
So you should not duplicate assignment as later override previous ones.
Here it is not necessary to close PR without understanding it. The first message clearly shows that both the 'SYNCDHCP' and 'DHCP' options have stopped working. In my last post you can see that these options work, first, you need to initialize the network interfaces, through "UP" The problem occurred somewhere due to commits in the last 20 days. I modified the rc.conf file a bit: ` ifconfig_bce0="mtu 9000 DHCP up" ifconfig_bce1="mtu 9000 DHCP up" ifconfig_bce2="mtu 9000 up" ifconfig_bce3="mtu 9000 up" ifconfig_igb0="mtu 9210 up" vlans_igb0="204" ifconfig_igb0_204="inet 192.168.85.2/30" ifconfig_igb1="inet 192.168.85.6/30 mtu 9210 up" ifconfig_ix0="mtu 9710 DHCP up descr 'Juniper qfx3500' " vlans_ix0="200 201 205" ifconfig_ix1="mtu 9710 up" ifconfig_DEFAULT="SYNCDHCP" ... gateway_enable="yes" EOF # ps -auxwxw | grep dhc root 82400 0,0 0,0 11400 2708 - Is 00:03 0:00,00 dhclient: system.syslog (dhclient) root 83621 0,0 0,0 11668 2792 - Is 00:03 0:00,00 dhclient: ix0.200 [priv] (dhclient) _dhcp 86675 0,0 0,0 11672 2808 - ICs 00:04 0:00,23 dhclient: ix0.200 (dhclient) root 67599 0,0 0,0 11464 2912 5 S+ 00:19 0:00,00 grep --color=auto dhc # dhclient ix0 ifconfig: ioctl (SIOCAIFADDR): File exists ix0: not found exiting. After the restart, the system tries to get the IP address in the 200th VLAN on the ix0 interface. The descr field also did not apply. # uname -a FreeBSD core.domain.com 12.0-STABLE FreeBSD 12.0-STABLE r347140 SUPPORT-12-0-1 amd64 # sysrc -a bsdstats_enable: YES bsnmpd_enable: YES ddb_enable: YES dumpdev: AUTO firewall_enable: YES firewall_quiet: NO firewall_script: /etc/ipfw/ipfw.conf firewall_type: UNKNOWN gateway_enable: yes hostname: core.domain.com ifconfig_DEFAULT: SYNCDHCP ifconfig_bce0: mtu 9000 DHCP up ifconfig_bce1: mtu 9000 DHCP up ifconfig_bce2: mtu 9000 up ifconfig_bce3: mtu 9000 up ifconfig_igb0: mtu 9210 up ifconfig_igb0_204: inet 192.168.85.2/30 ifconfig_igb1: inet 192.168.85.6/30 mtu 9210 up ifconfig_ix0: mtu 9710 DHCP up descr 'Juniper qfx3500' ifconfig_ix1: mtu 9710 up ntpd_enable: YES ntpd_flags: -g smartd_enable: YES sshd_enable: YES sshd_flags: -oPort=22 -oCompression=yes -oPermitRootLogin=yes -oPasswordAuthentication=yes -oProtocol=2 -oUseDNS=no sshguard_blacklist: 120:/var/db/sshguard/blacklist.db sshguard_danger_thresh: 60 sshguard_enable: YES sshguard_flags: -w 178.136.117.33/32 sshguard_release_interval: 420 sshguard_reset_interval: 1200 syslogd_flags: -s -8 vlans_igb0: 204 vlans_ix0: 200 201 205 watchdogd_enable: yes watchdogd_flags: -s 30 -t 300 zfs_enable: YES # ifconfig bce0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9000 options=c01bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO,LINKSTATE> ether 00:26:b9:3c:8c:91 inet 192.168.88.250 netmask 0xffffff00 broadcast 192.168.88.255 media: Ethernet autoselect (100baseTX <full-duplex>) status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> bce1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9000 options=c01bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO,LINKSTATE> ether 00:26:b9:3c:8c:93 media: Ethernet autoselect (none) status: no carrier nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> bce2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9000 options=c01bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO,LINKSTATE> ether 00:26:b9:3c:8c:95 media: Ethernet autoselect (none) status: no carrier nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> bce3: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9000 options=c01bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,VLAN_HWTSO,LINKSTATE> ether 00:26:b9:3c:8c:97 media: Ethernet autoselect (none) status: no carrier nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> igb0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9210 options=e527bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6> ether 00:16:31:fa:a4:e0 media: Ethernet autoselect (1000baseSX <full-duplex>) status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> igb1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9210 options=e527bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6> ether 00:16:31:fa:a4:e1 inet 192.168.85.6 netmask 0xfffffffc broadcast 192.168.85.7 media: Ethernet autoselect (1000baseSX <full-duplex>) status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> ix0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9710 description: Juniper qfx3500 options=e53fbb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6> ether 0c:c4:7a:59:d4:e8 media: Ethernet autoselect (10Gbase-Twinax <full-duplex,rxpause,txpause>) status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> ix1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9710 options=e53fbb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6> ether 0c:c4:7a:59:d4:e9 media: Ethernet autoselect status: no carrier nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> enc0: flags=41<UP,RUNNING> metric 0 mtu 1536 groups: enc nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384 options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6> inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0xa inet 127.0.0.1 netmask 0xff000000 groups: lo nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL> pfsync0: flags=0<> metric 0 mtu 1500 syncpeer: 0.0.0.0 maxupd: 128 defer: off groups: pfsync pflog0: flags=0<> metric 0 mtu 33672 groups: pflog igb0.204: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9210 options=600703<RXCSUM,TXCSUM,TSO4,TSO6,LRO,RXCSUM_IPV6,TXCSUM_IPV6> ether 00:16:31:fa:a4:e0 inet 192.168.85.2 netmask 0xfffffffc broadcast 192.168.85.3 groups: vlan vlan: 204 vlanpcp: 0 parent interface: igb0 media: Ethernet autoselect (1000baseSX <full-duplex>) status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> ix0.200: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9710 options=600703<RXCSUM,TXCSUM,TSO4,TSO6,LRO,RXCSUM_IPV6,TXCSUM_IPV6> ether 0c:c4:7a:59:d4:e8 inet 0.0.0.0 netmask 0xff000000 broadcast 255.255.255.255 groups: vlan vlan: 200 vlanpcp: 0 parent interface: ix0 media: Ethernet autoselect (10Gbase-Twinax <full-duplex,rxpause,txpause>) status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> ix0.201: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9710 options=600703<RXCSUM,TXCSUM,TSO4,TSO6,LRO,RXCSUM_IPV6,TXCSUM_IPV6> ether 0c:c4:7a:59:d4:e8 groups: vlan vlan: 201 vlanpcp: 0 parent interface: ix0 media: Ethernet autoselect (10Gbase-Twinax <full-duplex,rxpause,txpause>) status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> ix0.205: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 9710 options=600703<RXCSUM,TXCSUM,TSO4,TSO6,LRO,RXCSUM_IPV6,TXCSUM_IPV6> ether 0c:c4:7a:59:d4:e8 groups: vlan vlan: 205 vlanpcp: 0 parent interface: ix0 media: Ethernet autoselect (10Gbase-Twinax <full-duplex,rxpause,txpause>) status: active nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL> P.S. I'm sorry, the descr field applies.(In reply to Vladislav V. Prodan from comment #8) I believe I can reproduce this on 12.1-RELEASE in a VNET jail. From /etc/jail.conf (host) ==== dhcptest1 { path = "/usr/jail/dhcptest1"; host.hostname = "dhcptest1.net.isc.upenn.edu"; vnet; vnet.interface = dhcp1; allow.raw_sockets; mount.fdescfs; devfs_ruleset = 40; } ==== /etc/devfs.rules (host) ==== [devfsrules_jail_bpf=40] add include $devfsrules_hide_all add include $devfsrules_unhide_basic add include $devfsrules_unhide_login add path zfs unhide add path 'bpf*' unhide own bpf* root:network perm bpf* 0660 ==== /etc/rc.conf (jail) ==== firewall_enable="YES" firewall_type="open" ifconfig_dhcp1="DHCP" ==== The relevant lines from /etc/network.subr toward the end of ifconfig_up() are: ==== if dhcpif $1; then if [ $_cfg -ne 0 ] ; then ${IFCONFIG_CMD} $1 up fi if syncdhcpif $1; then /etc/rc.d/dhclient start $1 fi _cfg=0 fi ==== This is the only place anywhere in /etc containing "dhclient start", and it only runs if the iface is set to "SYNCDHCP" or if synchronous_dhclient=YES. I cannot figure out how this ever worked as documented in the rc.conf manpage, but I did find a clue in base r157706: "Allow the administrator to specify if dhclient should be started when /etc/rc.d/netif configures the interface or only by devd." That suggests to me that devd is a requirement for async DHCP, but I have not yet found what other configuration is required, nor what might have changed to trigger a latent bug. I also have this problem. I'm presently fiddling with things, But here's my current status. This problem did not happen in 12.1. It happens in 12.2. And the problem is not in the rc scripts or dhclient itself. Rather, dhclient has a routine, discover_interfaces, which gets the known interfaces by calling getifaddrs. When the interface does not have an IP address, getifaddrs returns the interface with an address of type AF_LINK; however, when the interface has an IP address, getifaddrs returns the interface twice--once with an address of type AF_LINK and once with an address of type AF_INET. It is the latter return that dhclient looks for. So the *real* problem is in getifaddrs or something it calls. (I got this information by compiling dhclient with some debugging hacks. After bringing the interface up, it would have no IP address and dhclient would fail. I then assigned the IP address to the interface manually and reran dhclient and it succeeded.) My next step is to see if the problem happens with GENERIC or just my custom kernel. I'll be back once I have some new info, but I thought I'd get this info out right away to avoid wasted effort looking at the startup scripts, etc. Happens with the GENERIC kernel as well. I'm going to download earlier versions of FreeBSD to see if I can pinpoint where the problem is. Also, I'm going to have to take back that it doesn't happen with 12.1. It didn't happen with the previous version I used, but it occurs to me that I might have gone right from 11.2 to 12.2. I'll know once I try the earlier versions. I tracked my problem down, by comparing the behavior of a stock system with my own. The stock system worked, mine didn't. Turns out: I have a dhclient-enter-hooks script and, somewhere along the line, I stuck an exit at the end of it. That caused dhclient-script to exit, so it didn't do any of the work it had to do, which prevented dhclient from getting to the interface. The fix was to remove the exit. All was well after that. Note that the dhclient-script man page says that the dhclient-enter-hooks script is *sourced*, so an exit in it is a no-no. Anyway, my problem is solved; I won't speak for anyone else's. :) |