Hi guys,
I had a strange situation last week. The scenario was the following – any host that I pinged and it was not in my /etc/hosts list did not respond and it showed the following error:
[root@OptimusPrime bumble]# ping google.ro ping: unknown host google.ro [root@OptimusPrime bumble]#
The DNS query looked ok:
[root@OptimusPrime bumble]# nslookup google.ro Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer: Name: google.ro Address: 82.77.159.222 Name: google.ro Address: 82.77.159.231 Name: google.ro Address: 82.77.159.251 Name: google.ro Address: 82.77.159.227 Name: google.ro Address: 82.77.159.241 Name: google.ro Address: 82.77.159.247 Name: google.ro Address: 82.77.159.232 Name: google.ro Address: 82.77.159.242 Name: google.ro Address: 82.77.159.221 Name: google.ro Address: 82.77.159.212 Name: google.ro Address: 82.77.159.236 Name: google.ro Address: 82.77.159.246 Name: google.ro Address: 82.77.159.217 Name: google.ro Address: 82.77.159.237 Name: google.ro Address: 82.77.159.226 Name: google.ro Address: 82.77.159.216 [root@OptimusPrime bumble]#
Also the /etc/resolv.conf file had nameserver 8.8.8.8 on the first line and the /etc/nsswitch.conf had the following entry hosts: files dns
So which was the problem? Well I had no idea.. so I had to dig the situation:
[root@OptimusPrime bumble]# strace ping -c 1 www.google.ro -bash: strace: command not found [root@OptimusPrime bumble]# yum install strace Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: download.srv.ro * extras: download.srv.ro * rpmforge: mirror.atrpms.net * updates: download.srv.ro
… but DNS is not working? 🙂 no problem, I added two entries in /etc/hosts (the mirror hosts).
After I installed strace I got this:
[root@OptimusPrime bumble]# strace ping -c 1 www.google.ro execve("/bin/ping", ["ping", "-c", "1", "www.google.ro"], [/* 22 vars */]) = 0 brk(0) = 0x89ec000 <span style="color: #000000;">access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)</span> open("/etc/ld.so.cache", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=47082, ...}) = 0 mmap2(NULL, 47082, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fb6000 close(3) = 0 open("/lib/libresolv.so.2", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000\261\330\0004\0\0\0"..., 512) = 512 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fb5000 fstat64(3, {st_mode=S_IFREG|0755, st_size=84904, ...}) = 0 mmap2(NULL, 84168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x81e000 mmap2(0x82f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10) = 0x82f000 mmap2(0x831000, 6344, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x831000 close(3) = 0 open("/lib/libc.so.6", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\220f\0004\0\0\0"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0755, st_size=1706232, ...}) = 0 mmap2(NULL, 1426884, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xcc1000 mmap2(0xe18000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x156) = 0xe18000 mmap2(0xe1b000, 9668, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xe1b000 close(3) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fb4000 set_thread_area({entry_number:-1 -> 6, base_addr:0xb7fb46c0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0 mprotect(0xe18000, 8192, PROT_READ) = 0 mprotect(0x82f000, 4096, PROT_READ) = 0 mprotect(0x40e000, 4096, PROT_READ) = 0 munmap(0xb7fb6000, 47082) = 0 socket(PF_INET, SOCK_RAW, IPPROTO_ICMP) = 3 getuid32() = 0 setuid32(0) = 0 brk(0) = 0x89ec000 brk(0x8a0d000) = 0x8a0d000 getpid() = 20724 open("/etc/resolv.conf", O_RDONLY) = 4 fstat64(4, {st_mode=S_IFREG|0644, st_size=164, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fc1000 read(4, "nameserver 213.154.124.1\nnameser"..., 4096) = 164 read(4, "", 4096) = 0 close(4) = 0 munmap(0xb7fc1000, 4096) = 0 uname({sys="Linux", node="OptimusPrime", ...}) = 0 socket(PF_FILE, SOCK_STREAM, 0) = 4 fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0 connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"...}, 110) = 0 send(4, "\2\0\0\0\r\0\0\0\6\0\0\0hosts\0", 18, MSG_NOSIGNAL) = 18 poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([{fd=4, revents=POLLIN}]) recvmsg(4, {msg_name(0)=NULL, msg_iov(2)=[{"hosts\0", 6}, {"\270O\3\0\0\0\0\0", 8}], msg_controllen=16, {cmsg_len=16, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, {5}}, msg_flags=0}, 0) = 14 mmap2(NULL, 217016, PROT_READ, MAP_SHARED, 5, 0) = 0xb7f7f000 close(5) = 0 close(4) = 0 socket(PF_FILE, SOCK_STREAM, 0) = 4 fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0 connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"...}, 110) = 0 send(4, "\2\0\0\0\4\0\0\0\16\0\0\0www.google.ro\0", 26, MSG_NOSIGNAL) = 26 poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([{fd=4, revents=POLLIN|POLLHUP}]) read(4, "\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\377\377\377\377\377\377\0\0\0\0\1\0\0\0", 32) = 32 close(4) = 0 write(2, "ping: unknown host www.google.ro"..., 33ping: unknown host www.google.ro ) = 33 exit_group(2) = ? [root@OptimusPrime bumble]#
As you can see the “/etc/ld.so.preload” file is missing. I tried to find it with yum provides but no success, so I came with the idea that it could possible be from glibc so I did a yum install glic which actually upgraded my current one:
[root@OptimusPrime bumble]# yum install glibc Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: download.srv.ro * extras: download.srv.ro * rpmforge: mirror.atrpms.net * updates: download.srv.ro Setting up Install Process Resolving Dependencies There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them. The program yum-complete-transaction is found in the yum-utils package. --> Running transaction check --> Processing Dependency: glibc = 2.5-107 for package: glibc-headers --> Processing Dependency: glibc = 2.5-107 for package: nscd --> Processing Dependency: glibc = 2.5-107 for package: glibc-devel ---> Package glibc.i686 0:2.5-107.el5_9.5 set to be updated --> Processing Dependency: glibc-common = 2.5-107.el5_9.5 for package: glibc --> Running transaction check ---> Package glibc-common.i386 0:2.5-107.el5_9.5 set to be updated ---> Package glibc-devel.i386 0:2.5-107.el5_9.5 set to be updated ---> Package glibc-headers.i386 0:2.5-107.el5_9.5 set to be updated ---> Package nscd.i386 0:2.5-107.el5_9.5 set to be updated --> Finished Dependency Resolution Dependencies Resolved ===================================================================================================================================================================================================== Package Arch Version Repository Size ===================================================================================================================================================================================================== Updating: glibc i686 2.5-107.el5_9.5 updates 5.4 M Updating for dependencies: glibc-common i386 2.5-107.el5_9.5 updates 16 M glibc-devel i386 2.5-107.el5_9.5 updates 2.1 M glibc-headers i386 2.5-107.el5_9.5 updates 610 k nscd i386 2.5-107.el5_9.5 updates 177 k Transaction Summary ===================================================================================================================================================================================================== Install 0 Package(s) Upgrade 5 Package(s) Total download size: 25 M Is this ok [y/N]: y Downloading Packages: (1/5): nscd-2.5-107.el5_9.5.i386.rpm | 177 kB 00:00 (2/5): glibc-headers-2.5-107.el5_9.5.i386.rpm | 610 kB 00:00 (3/5): glibc-devel-2.5-107.el5_9.5.i386.rpm | 2.1 MB 00:00 (4/5): glibc-2.5-107.el5_9.5.i686.rpm | 5.4 MB 00:01 (5/5): glibc-common-2.5-107.el5_9.5.i386.rpm | 16 MB 00:04 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Total 2.8 MB/s | 25 MB 00:08 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Updating : glibc-common 1/10 Updating : glibc 2/10 Updating : nscd 3/10 Updating : glibc-headers 4/10 Updating : glibc-devel 5/10 Cleanup : glibc-common 6/10 Cleanup : nscd 7/10 Cleanup : glibc-headers 8/10 Cleanup : glibc 9/10 Cleanup : glibc-devel 10/10 Updated: glibc.i686 0:2.5-107.el5_9.5 Dependency Updated: glibc-common.i386 0:2.5-107.el5_9.5 glibc-devel.i386 0:2.5-107.el5_9.5 glibc-headers.i386 0:2.5-107.el5_9.5 nscd.i386 0:2.5-107.el5_9.5 Complete! [root@OptimusPrime bumble]#
After doing all this steps I finally managed to get my DNS back 🙂
[root@OptimusPrime bumble]# ping -c 3 google.ro PING google.ro (82.77.159.118) 56(84) bytes of data. 64 bytes from unresolved.rdstm.ro (82.77.159.118): icmp_seq=1 ttl=60 time=4.55 ms 64 bytes from unresolved.rdstm.ro (82.77.159.118): icmp_seq=2 ttl=60 time=4.80 ms 64 bytes from unresolved.rdstm.ro (82.77.159.118): icmp_seq=3 ttl=60 time=4.76 ms --- google.ro ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2001ms rtt min/avg/max/mdev = 4.559/4.708/4.805/0.133 ms [root@OptimusPrime bumble]#
It is strange anyway because the file is still missing:
[root@OptimusPrime bumble]# file /etc/ld.so.preload /etc/ld.so.preload: ERROR: cannot open `/etc/ld.so.preload' (No such file or directory) [root@OptimusPrime bumble]#
So I took another look at the strace command:
[root@OptimusPrime bumble]# strace ping -c 1 www.google.ro execve("/bin/ping", ["ping", "-c", "1", "www.google.ro"], [/* 22 vars */]) = 0 brk(0) = 0x896f000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=47082, ...}) = 0 mmap2(NULL, 47082, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fd9000 close(3) = 0 open("/lib/libresolv.so.2", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000!\0\0004\0\0\0"..., 512) = 512 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fd8000 fstat64(3, {st_mode=S_IFREG|0755, st_size=83048, ...}) = 0 mmap2(NULL, 84168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x66a000 mmap2(0x67b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10) = 0x67b000 mmap2(0x67d000, 6344, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x67d000 close(3) = 0 open("/lib/libc.so.6", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0`\1\0004\0\0\0"..., 512) = 512 fstat64(3, {st_mode=S_IFREG|0755, st_size=1702816, ...}) = 0 mmap2(NULL, 1426884, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x205000 mmap2(0x35c000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x156) = 0x35c000 mmap2(0x35f000, 9668, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x35f000 close(3) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fd7000 set_thread_area({entry_number:-1 -> 6, base_addr:0xb7fd76c0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0 mprotect(0x35c000, 8192, PROT_READ) = 0 mprotect(0x67b000, 4096, PROT_READ) = 0 mprotect(0xb9f000, 4096, PROT_READ) = 0 munmap(0xb7fd9000, 47082) = 0 socket(PF_INET, SOCK_RAW, IPPROTO_ICMP) = 3 getuid32() = 0 setuid32(0) = 0 brk(0) = 0x896f000 brk(0x8990000) = 0x8990000 getpid() = 21113 open("/etc/resolv.conf", O_RDONLY) = 4 fstat64(4, {st_mode=S_IFREG|0644, st_size=165, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fe4000 read(4, "#nameserver 213.154.124.1\n#names"..., 4096) = 165 read(4, "", 4096) = 0 close(4) = 0 munmap(0xb7fe4000, 4096) = 0 uname({sys="Linux", node="OptimusPrime", ...}) = 0 socket(PF_FILE, SOCK_STREAM, 0) = 4 fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0 connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"...}, 110) = 0 send(4, "\2\0\0\0\r\0\0\0\6\0\0\0hosts\0", 18, MSG_NOSIGNAL) = 18 poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([{fd=4, revents=POLLIN|POLLHUP}]) recvmsg(4, {msg_name(0)=NULL, msg_iov(2)=[{"hosts\0", 6}, {"\270O\3\0\0\0\0\0", 8}], msg_controllen=16, {cmsg_len=16, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, {5}}, msg_flags=0}, 0) = 14 mmap2(NULL, 217016, PROT_READ, MAP_SHARED, 5, 0) = 0xb7fa2000 close(5) = 0 close(4) = 0 socket(PF_FILE, SOCK_STREAM, 0) = 4 fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0 connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"...}, 110) = 0 send(4, "\2\0\0\0\4\0\0\0\16\0\0\0www.google.ro\0", 26, MSG_NOSIGNAL) = 26 poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([{fd=4, revents=POLLIN|POLLHUP}]) read(4, "\2\0\0\0\1\0\0\0\16\0\0\0\0\0\0\0\2\0\0\0\4\0\0\0\20\0\0\0\0\0\0\0", 32) = 32 readv(4, [{"www.google.ro\0", 14}, {"RM\237\347RM\237\354RM\237\362RM\237\331RM\237\361RM\237\324RM\237\336RM\237\373"..., 64}], 2) = 78 close(4) = 0 socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4 connect(4, {sa_family=AF_INET, sin_port=htons(1025), sin_addr=inet_addr("82.77.159.231")}, 16) = 0 getsockname(4, {sa_family=AF_INET, sin_port=htons(59689), sin_addr=inet_addr("192.168.1.100")}, [16]) = 0 close(4) = 0 setsockopt(3, SOL_RAW, ICMP_FILTER, ~(ICMP_ECHOREPLY|ICMP_DEST_UNREACH|ICMP_SOURCE_QUENCH|ICMP_REDIRECT|ICMP_TIME_EXCEEDED|ICMP_PARAMETERPROB), 4) = 0 setsockopt(3, SOL_IP, IP_RECVERR, [1], 4) = 0 setsockopt(3, SOL_SOCKET, SO_SNDBUF, [324], 4) = 0 setsockopt(3, SOL_SOCKET, SO_RCVBUF, [65536], 4) = 0 getsockopt(3, SOL_SOCKET, SO_RCVBUF, [131072], [4]) = 0 fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fe4000 write(1, "PING www.google.ro (82.77.159.23"..., 57PING www.google.ro (82.77.159.231) 56(84) bytes of data. ) = 57 setsockopt(3, SOL_SOCKET, SO_TIMESTAMP, [1], 4) = 0 setsockopt(3, SOL_SOCKET, SO_SNDTIMEO, "\1\0\0\0\0\0\0\0", 8) = 0 setsockopt(3, SOL_SOCKET, SO_RCVTIMEO, "\1\0\0\0\0\0\0\0", 8) = 0 rt_sigaction(SIGINT, {0x754200, [], SA_INTERRUPT}, NULL, 8) = 0 rt_sigaction(SIGALRM, {0x754200, [], SA_INTERRUPT}, NULL, 8) = 0 rt_sigaction(SIGQUIT, {0x754220, [], SA_INTERRUPT}, NULL, 8) = 0 gettimeofday({1376776911, 335945}, NULL) = 0 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0 ioctl(1, TIOCGWINSZ, {ws_row=52, ws_col=197, ws_xpixel=0, ws_ypixel=0}) = 0 gettimeofday({1376776911, 339034}, NULL) = 0 gettimeofday({1376776911, 339283}, NULL) = 0 sendmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("82.77.159.231")}, msg_iov(1)=[{"\10\0\\7yR\0\1\317\362\17RS-\5\0\10\t\n\v\f\r\16\17\20\21\22\23\24\25\26\27"..., 64}], msg_controllen=0, msg_flags=0}, 0) = 64 setitimer(ITIMER_REAL, {it_interval={0, 0}, it_value={10, 0}}, NULL) = 0 recvmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("82.77.159.231")}, msg_iov(1)=[{"E\0\0TOL\0\0<\1{\34RM\237\347\300\250\1d\0\0d7yR\0\1\317\362\17R"..., 192}], msg_controllen=20, {cmsg_len=20, cmsg_level=SOL_SOCKET, cmsg_type=0x1d /* SCM_??? */, ...}, msg_flags=0}, 0) = 84 socket(PF_FILE, SOCK_STREAM, 0) = 4 fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0 connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"...}, 110) = 0 send(4, "\2\0\0\0\6\0\0\0\4\0\0\0RM\237\347", 16, MSG_NOSIGNAL) = 16 poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([{fd=4, revents=POLLIN|POLLHUP}]) read(4, "\2\0\0\0\1\0\0\0\24\0\0\0\0\0\0\0\2\0\0\0\4\0\0\0\1\0\0\0\0\0\0\0", 32) = 32 readv(4, [{"unresolved.rdstm.ro\0", 20}, {"RM\237\347", 4}], 2) = 24 close(4) = 0 write(1, "64 bytes from unresolved.rdstm.r"..., 8264 bytes from unresolved.rdstm.ro (82.77.159.231): icmp_seq=1 ttl=60 time=4.33 ms ) = 82 write(1, "\n", 1 ) = 1 write(1, "--- www.google.ro ping statistic"..., 38--- www.google.ro ping statistics --- ) = 38 write(1, "1 packets transmitted, 1 receive"..., 601 packets transmitted, 1 received, 0% packet loss, time 3ms ) = 60 write(1, "rtt min/avg/max/mdev = 4.333/4.3"..., 50rtt min/avg/max/mdev = 4.333/4.333/4.333/0.000 ms ) = 50 exit_group(0) = ? [root@OptimusPrime bumble]#
I have saved the two traces in two different files (a.txt and b.txt) and ran sdiff on them and I got the following:
[root@OptimusPrime bumble]# sdiff a.txt b.txt execve("/bin/ping", ["ping", "-c", "1", "www.google.ro"], [/* execve("/bin/ping", ["ping", "-c", "1", "www.google.ro"], [/* brk(0) = 0x89ec000 | brk(0) = 0x896f000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such open("/etc/ld.so.cache", O_RDONLY) = 3 open("/etc/ld.so.cache", O_RDONLY) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=47082, ...}) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=47082, ...}) = 0 mmap2(NULL, 47082, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fb6000 | mmap2(NULL, 47082, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fd9000 close(3) = 0 close(3) = 0 open("/lib/libresolv.so.2", O_RDONLY) = 3 open("/lib/libresolv.so.2", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000\2 | read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000!\ mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONY | mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONY fstat64(3, {st_mode=S_IFREG|0755, st_size=84904, ...}) = 0 | fstat64(3, {st_mode=S_IFREG|0755, st_size=83048, ...}) = 0 mmap2(NULL, 84168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYW | mmap2(NULL, 84168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYW mmap2(0x82f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_F | mmap2(0x67b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_F mmap2(0x831000, 6344, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_F | mmap2(0x67d000, 6344, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_F close(3) = 0 close(3) = 0 open("/lib/libc.so.6", O_RDONLY) = 3 open("/lib/libc.so.6", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\22 | read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0`\1 fstat64(3, {st_mode=S_IFREG|0755, st_size=1706232, ...}) = 0 | fstat64(3, {st_mode=S_IFREG|0755, st_size=1702816, ...}) = 0 mmap2(NULL, 1426884, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DEN | mmap2(NULL, 1426884, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DEN mmap2(0xe18000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ | mmap2(0x35c000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ mmap2(0xe1b000, 9668, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_F | mmap2(0x35f000, 9668, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_F close(3) = 0 close(3) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONY | mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONY set_thread_area({entry_number:-1 -> 6, base_addr:0xb7fb46c0, | set_thread_area({entry_number:-1 -> 6, base_addr:0xb7fd76c0, mprotect(0xe18000, 8192, PROT_READ) = 0 | mprotect(0x35c000, 8192, PROT_READ) = 0 mprotect(0x82f000, 4096, PROT_READ) = 0 | mprotect(0x67b000, 4096, PROT_READ) = 0 mprotect(0x40e000, 4096, PROT_READ) = 0 | mprotect(0xb9f000, 4096, PROT_READ) = 0 munmap(0xb7fb6000, 47082) = 0 | munmap(0xb7fd9000, 47082) = 0 socket(PF_INET, SOCK_RAW, IPPROTO_ICMP) = 3 socket(PF_INET, SOCK_RAW, IPPROTO_ICMP) = 3 getuid32() = 0 getuid32() = 0 setuid32(0) = 0 setuid32(0) = 0 brk(0) = 0x89ec000 | brk(0) = 0x896f000 brk(0x8a0d000) = 0x8a0d000 | brk(0x8990000) = 0x8990000 getpid() = 20724 | getpid() = 21113 open("/etc/resolv.conf", O_RDONLY) = 4 open("/etc/resolv.conf", O_RDONLY) = 4 fstat64(4, {st_mode=S_IFREG|0644, st_size=164, ...}) = 0 | fstat64(4, {st_mode=S_IFREG|0644, st_size=165, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONY | mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONY read(4, "nameserver 213.154.124.1\nnameser"..., 4096) = 164 | read(4, "#nameserver 213.154.124.1\n#names"..., 4096) = 165 read(4, "", 4096) = 0 read(4, "", 4096) = 0 close(4) = 0 close(4) = 0 munmap(0xb7fc1000, 4096) = 0 | munmap(0xb7fe4000, 4096) = 0 uname({sys="Linux", node="OptimusPrime", ...}) = 0 uname({sys="Linux", node="OptimusPrime", ...}) = 0 socket(PF_FILE, SOCK_STREAM, 0) = 4 socket(PF_FILE, SOCK_STREAM, 0) = 4 fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0 fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0 connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"... connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"... send(4, "\2\0\0\0\r\0\0\0\6\0\0\0hosts\0", 18, MSG_NOSIGNAL) send(4, "\2\0\0\0\r\0\0\0\6\0\0\0hosts\0", 18, MSG_NOSIGNAL) poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([ | poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([ recvmsg(4, {msg_name(0)=NULL, msg_iov(2)=[{"hosts\0", 6}, {"\ recvmsg(4, {msg_name(0)=NULL, msg_iov(2)=[{"hosts\0", 6}, {"\ mmap2(NULL, 217016, PROT_READ, MAP_SHARED, 5, 0) = 0xb7f7f000 | mmap2(NULL, 217016, PROT_READ, MAP_SHARED, 5, 0) = 0xb7fa2000 close(5) = 0 close(5) = 0 close(4) = 0 close(4) = 0 socket(PF_FILE, SOCK_STREAM, 0) = 4 socket(PF_FILE, SOCK_STREAM, 0) = 4 fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0 fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0 connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"... connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"... send(4, "\2\0\0\0\4\0\0\0\16\0\0\0www.google.ro\0", 26, MSG_N send(4, "\2\0\0\0\4\0\0\0\16\0\0\0www.google.ro\0", 26, MSG_N poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([ poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([ read(4, "\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\377\377\377 | read(4, "\2\0\0\0\1\0\0\0\16\0\0\0\0\0\0\0\2\0\0\0\4\0\0\0\20 > readv(4, [{"www.google.ro\0", 14}, {"RM\237\347RM\237\354RM\2 > close(4) = 0 > socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4 > connect(4, {sa_family=AF_INET, sin_port=htons(1025), sin_addr > getsockname(4, {sa_family=AF_INET, sin_port=htons(59689), sin > close(4) = 0 > setsockopt(3, SOL_RAW, ICMP_FILTER, ~(ICMP_ECHOREPLY|ICMP_DES > setsockopt(3, SOL_IP, IP_RECVERR, [1], 4) = 0 > setsockopt(3, SOL_SOCKET, SO_SNDBUF, [324], 4) = 0 > setsockopt(3, SOL_SOCKET, SO_RCVBUF, [65536], 4) = 0 > getsockopt(3, SOL_SOCKET, SO_RCVBUF, [131072], [4]) = 0 > fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), .. > mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONY > write(1, "PING www.google.ro (82.77.159.23"..., 57PING www.go > ) = 57 > setsockopt(3, SOL_SOCKET, SO_TIMESTAMP, [1], 4) = 0 > setsockopt(3, SOL_SOCKET, SO_SNDTIMEO, "\1\0\0\0\0\0\0\0", 8) > setsockopt(3, SOL_SOCKET, SO_RCVTIMEO, "\1\0\0\0\0\0\0\0", 8) > rt_sigaction(SIGINT, {0x754200, [], SA_INTERRUPT}, NULL, 8) = > rt_sigaction(SIGALRM, {0x754200, [], SA_INTERRUPT}, NULL, 8) > rt_sigaction(SIGQUIT, {0x754220, [], SA_INTERRUPT}, NULL, 8) > gettimeofday({1376776911, 335945}, NULL) = 0 > ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig ic > ioctl(1, TIOCGWINSZ, {ws_row=52, ws_col=197, ws_xpixel=0, ws_ > gettimeofday({1376776911, 339034}, NULL) = 0 > gettimeofday({1376776911, 339283}, NULL) = 0 > sendmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0 > setitimer(ITIMER_REAL, {it_interval={0, 0}, it_value={10, 0}} > recvmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0 > socket(PF_FILE, SOCK_STREAM, 0) = 4 > fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK) = 0 > connect(4, {sa_family=AF_FILE, path="/var/run/nscd/socket"... > send(4, "\2\0\0\0\6\0\0\0\4\0\0\0RM\237\347", 16, MSG_NOSIGNA > poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 5000) = 1 ([ > read(4, "\2\0\0\0\1\0\0\0\24\0\0\0\0\0\0\0\2\0\0\0\4\0\0\0\1\ > readv(4, [{"unresolved.rdstm.ro\0", 20}, {"RM\237\347", 4}], close(4) = 0 close(4) = 0 write(2, "ping: unknown host www.google.ro"..., 33ping: unkno | write(1, "64 bytes from unresolved.rdstm.r"..., 8264 bytes fr ) = 33 | ) = 82 exit_group(2) | write(1, "\n", 1 > ) = 1 > write(1, "--- www.google.ro ping statistic"..., 38--- www.goo > ) = 38 > write(1, "1 packets transmitted, 1 receive"..., 601 packets t > ) = 60 > write(1, "rtt min/avg/max/mdev = 4.333/4.3"..., 50rtt min/avg > ) = 50 > exit_group(0) = ? [root@OptimusPrime bumble]#
I still can’t see why didn’t work first time but I’m glad that I got it fixed. Maybe some one can comment to this article and help us understand 😛
Thanks for your time