Dig Failed on WSL2 Ubuntu 22.04
dig command failed due to libuv version mismatch
This KB covers the investigation and resolution steps taken when dig failed with a fatal libuv version error inside Ubuntu 22.04 LTS running on WSL2.
Environment
- OS: Ubuntu 22.04 LTS (Jammy Jellyfish) on WSL2
- Kernel: Linux TOWER-1 6.6.87.2-microsoft-standard-WSL2
libuvinstalled version: 1.43.0libdns-export1110andlibisc-export1105versions: 1:9.11.19+dfsg-2.1ubuntu3digfromdnsutilspackage
Problem
Running the following command produces a fatal error:
dig NS joeden.com
Output:
netmgr/netmgr.c:232:isc__netmgr_create(): fatal error: libuv version too new: running with libuv 1.43.0 when compiled with libuv 1.34.2 will lead to libuv failures
Aborted (core dumped)
This indicates a mismatch between the libuv version installed on the system (1.43.0) and the version with which the ISC libraries (libdns-export1110, libisc-export1105) were compiled (1.34.2).
Steps Taken
1. Verified OS and package versions
OS release info:
lsb_release -a
uname -a
Output: Showed Ubuntu 22.04 LTS running on WSL2.
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04 LTS
Release: 22.04
Codename: jammy
Linux TOWER-1 6.6.87.2-microsoft-standard-WSL2 #1 SMP PREEMPT_DYNAMIC Thu Jun 5 18:30:46 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Checked installed ISC packages:
dpkg -l | grep isc
Output: Confirmed libdns-export1110 and libisc-export1105 installed at version 1:9.11.19+dfsg-2.1ubuntu3.
ii base-files 12ubuntu4 amd64 Debian base system miscellaneous files
ii debianutils 5.5-1ubuntu2 amd64 Miscellaneous utilities specific to Debian
ii isc-dhcp-client 4.4.1-2.3ubuntu2 amd64 DHCP client for automatically obtaining an IP address
ii isc-dhcp-common 4.4.1-2.3ubuntu2 amd64 common manpages relevant to all of the isc-dhcp packages
ii libbdplus0:amd64 0.2.0-1 amd64 implementation of BD+ for reading Blu-ray Discs
ii libbluray2:amd64 1:1.3.1-1 amd64 Blu-ray disc playback support library (shared library)
ii libisc-export1105:amd64 1:9.11.19+dfsg-2.1ubuntu3 amd64 Exported ISC Shared Library
ii libxext6:amd64 2:1.3.4-1build1 amd64 X11 miscellaneous extension library
ii libxfixes3:amd64 1:6.0.0-1 amd64 X11 miscellaneous 'fixes' extension library
ii libxmu6:amd64 2:1.1.3-3 amd64 X11 miscellaneous utility library
ii libxmuu1:amd64 2:1.1.3-3 amd64 X11 miscellaneous micro-utility library
rc open-iscsi 2.0.874-7.1ubuntu6.4 amd64 iSCSI initiator tools
ii psmisc 23.4-2build3 amd64 utilities that use the proc file system
ii python3-pkg-resources 59.6.0-1.2 all Package Discovery and Resource Access using pkg_resources
ii python3-zeroconf 0.38.3-2 all Pure Python implementation of multicast DNS service discovery (Python3)
ii util-linux 2.37.2-4ubuntu3 amd64 miscellaneous system utilities
Checked installed libuv version:
dpkg -l | grep libuv
ldconfig -p | grep libuv
Output: Installed libuv1:amd64 version 1.43.0.
ii libuv1:amd64 1.43.0-1 amd64 asynchronous event notification library - runtime library
ii libuv1-dev:amd64 1.43.0-1 amd64 asynchronous event notification library - development files
libuv.so.1 (libc6,x86-64) => /lib/x86_64-linux-gnu/libuv.so.1
libuv.so (libc6,x86-64) => /lib/x86_64-linux-gnu/libuv.so
2. Tried updating the ISC packages and system
No newer versions available, and packages already at latest.
sudo apt update
sudo apt install libdns-export1110 libisc-export1105
sudo apt full-upgrade
Output:
Get more security updates through Ubuntu Pro with 'esm-apps' enabled:
[list of packages...]
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
3. Attempted reinstalling ISC packages
Did not resolve the libuv mismatch issue.
sudo apt remove libdns-export1110 libisc-export1105
sudo apt install libdns-export1110 libisc-export1105
4. Verified no leftover sources from older Ubuntu versions
Found some commented lines referencing Ubuntu 20.04 focal, but no active focal repositories that could cause version mismatch.
grep -r 'focal' /etc/apt/sources.list*
5. Tried installing bind9 from snap for a newer dig binary
Installed...
sudo snap install bind9 --classic
Failed with error:
error: snap "bind9" not found
6. Tested alternative DNS client: drill
Installed drill via:
sudo apt install dnsutils
Ran:
drill NS joeden.com
Output:
;; ->>HEADER<<- opcode: QUERY, rcode: NOERROR, id: 23573
;; flags: qr rd ; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;; joeden.com. IN NS
;; ANSWER SECTION:
joeden.com. 0 IN NS ns3bgq.name.com.
joeden.com. 0 IN NS ns4qxz.name.com.
joeden.com. 0 IN NS ns1stv.name.com.
joeden.com. 0 IN NS ns2hkt.name.com.
;; Query time: 1 msec
;; SERVER: 172.25.144.1
;; WHEN: Sun Aug 10 00:29:58 2024
;; MSG SIZE rcvd: 154
The drill command successfully returned the NS records without error.
Root Cause
The dig tool was linked against older ISC libraries compiled with libuv 1.34.2, but the system had libuv 1.43.0 installed. This ABI mismatch caused dig to fail with a fatal error.
Resolution
Use the drill command from dnsutils as a working alternative DNS lookup tool on Ubuntu 22.04 WSL2, since it works correctly with the newer libuv library.
Summary
| Step | Outcome |
|---|---|
| Check system and package versions | Ubuntu 22.04 with latest ISC and libuv packages |
| Upgrade / reinstall ISC libs | No effect; mismatch remains |
| Snap install bind9 | Not available |
Run dig | Fails due to libuv version mismatch |
Run drill | Works perfectly, provides expected results |
Notes
Recommendations:
- Until the ISC packages or
digget rebuilt for newerlibuvversions on WSL2, preferdrillas DNS querying tool. - Alternatively, run
diginside a container or on a native Linux environment with compatible library versions. - Monitor package updates from Ubuntu for fixes.