lost and found ( for me ? )

Power DNS : how to build pdns-tools ( dnswasher, dnsscope, dnsbulktest, dnsdist, dnsreplay, dnstcpbench )

Followings are useful DNS tools, such as pcap reply, benchmark tool etc, which contains Power DNS source code.

dnswasher: remove IP addresses from a DNS pcap file
dnsscope: provide query/response timing stats from DNS pcap file
dnsbulktest: send out many parallel queries to validate resolver performance
dnsdist: simple high performance UDP/TCP DNS load balancer
dnsreplay: replay existing DNS pcap files to compare nameservers
dnstcpbench: stress out nameservers over TCP/IP

Here are trial and error logs when building these tools on Ubuntu 13.10 64bit.

# tail -1 /etc/lsb-release ;uname -ri
DISTRIB_DESCRIPTION="Ubuntu 13.10"
3.11.0-12-generic x86_64

download the source code from git.
# apt-get install git
# git clone https://github.com/PowerDNS/pdns.git

install required packages
# apt-get install autoconf automake bison flex g++ libboost-all-dev libtool make pkg-config ragel

build
# cd pdns/
# ./bootstrap
# ./configure --with-modules="" --without-lua
# cd pdns/

# pwd
/root/PowerDNS_works/pdns/pdns

- build dnswasher

error
# pwd
/root/PowerDNS_works/pdns/pdns

# make dnswasher
 CXXLD    dnswasher
/usr/bin/ld: cannot find -lz
collect2: error: ld returned 1 exit status
make: *** [dnswasher] Error 1

Googling this error, I might solve this by installing lib32z1-dev..
# apt-get install lib32z1-dev

try again. Okay, I was able to build dnswasher.
# make dnswasher
 CXXLD    dnswasher
root@ubuntu1310-vm6:~/PowerDNS_works/pdns/pdns# echo $?
0

# ./dnswasher --help
Syntax: dnswasher infile outfile

- build other tools.

root@ubuntu1310-vm6:~/PowerDNS_works/pdns/pdns# make dnsscope
 CXX      dnsscope.o
 CXXLD    dnsscope
root@ubuntu1310-vm6:~/PowerDNS_works/pdns/pdns# make dnsbulktest
 CXX      dnsbulktest.o
 CXXLD    dnsbulktest
root@ubuntu1310-vm6:~/PowerDNS_works/pdns/pdns# make dnsdist
 CXX      dnsdist.o
 CXX      iputils.o
 CXXLD    dnsdist
root@ubuntu1310-vm6:~/PowerDNS_works/pdns/pdns# make dnsreplay
 CXX      dnsreplay.o
 CXXLD    dnsreplay
root@ubuntu1310-vm6:~/PowerDNS_works/pdns/pdns# make dnstcpbench
 CXXLD    dnstcpbench
root@ubuntu1310-vm6:~/PowerDNS_works/pdns/pdns#


No comments:

Post a Comment

Note: Only a member of this blog may post a comment.