[ZBX-7477] DNS reverse validation Created: 2013 Dec 03 Updated: 2017 May 30 Resolved: 2013 Dec 05 |
|
Status: | Closed |
Project: | ZABBIX BUGS AND ISSUES |
Component/s: | Agent (G) |
Affects Version/s: | 2.2.0 |
Fix Version/s: | None |
Type: | Incident report | Priority: | Major |
Reporter: | Bruno Galindro da Costa | Assignee: | Unassigned |
Resolution: | Duplicate | Votes: | 0 |
Labels: | agent, dns, zabbix_get | ||
Remaining Estimate: | Not Specified | ||
Time Spent: | Not Specified | ||
Original Estimate: | Not Specified | ||
Environment: |
Distributor ID: Ubuntu |
Issue Links: |
|
Description |
I got this error on zabbix_get execution: zabbix_get [25820]: Get value error: cannot connect to [[xxx.xxx.xx]:10050]: [13] Permission denied I've two address configured to point to my server 192.168.2.71: xxx.xxx.xx and yyy.yyy.yy. But, yyy.yyy.yy is configured as a reverse of my server 192.168.2.71. So, If I exec zabbix_get on yyy.yyy.yy or 192.168.2.71, it works perfectly. Then, I sugest to only validate the existance of a reverse, not if it exists and the dns address is the same as requested. |
Comments |
Comment by Bruno Galindro da Costa [ 2013 Dec 03 ] |
Or maybe change the error message to something more human readable, like this: "dns reverse validation error" |
Comment by Aleksandrs Saveljevs [ 2013 Dec 03 ] |
Zabbix does not do any reverse DNS validation... Could you please elaborate more on the problem and what those "xxx.xxx.xx" and "yyy.yyy.yy" are? |
Comment by Bruno Galindro da Costa [ 2013 Dec 03 ] |
Ok, sorry if I not clarify the error. What I'm trying to explain is: 1 - I have two DNS A records (foo.domain.com and bar.domain.com) pointing to same IP Address (192.168.2.71) This scenario will cause this error: zabbix_get [25820]: Get value error: cannot connect to [[bar.domain.com]:10050]: [13] Permission denied If you configure Zabbix to monitor foo.domain.com or 192.168.2.71, the communication will be established successfully. |
Comment by Aleksandrs Saveljevs [ 2013 Dec 04 ] |
I have tried the same scenario and the problem does not reproduce itself. Have you installed Zabbix 2.2.0 from sources or from Ubuntu packages? Could you please try running zabbix_get under strace? For instance, "strace zabbix_get -s <host> -k <item>"? |
Comment by Bruno Galindro da Costa [ 2013 Dec 04 ] |
I've installed from official zabbix ubuntu repositories via apt-get dpkg --list ii zabbix-agent 1:2.2.0-1+precise network monitoring solution - agent ii zabbix-get 1:2.2.0-1+precise network monitoring solution - get ii zabbix-java-gateway 1:2.2.0-1+precise network monitoring solution - java-gateway ii zabbix-release 2.2-1+precise Zabbix official repository configuration ii zabbix-sender 1:2.2.0-1+precise network monitoring solution - sender ii zabbix-server-mysql 1:2.2.0-1+precise network monitoring solution - server (using MySQL) This is the dns address that isn't reverse of the IP. As you can see, zabbix displays the error. strace zabbix_get -s imap.mail.ufsc.br -k 'agent.ping' execve("/usr/bin/zabbix_get", ["zabbix_get", "-s", "imap.mail.ufsc.br", "-k", "agent.ping"], [/* 15 vars */]) = 0 brk(0) = 0x2479000 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9f9c000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=40659, ...}) = 0 mmap(NULL, 40659, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f4dc9f92000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/librt.so.1", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340!\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=31752, ...}) = 0 mmap(NULL, 2128984, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4dc9b74000 mprotect(0x7f4dc9b7b000, 2093056, PROT_NONE) = 0 mmap(0x7f4dc9d7a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f4dc9d7a000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200\30\2\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=1815224, ...}) = 0 mmap(NULL, 3929304, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4dc97b4000 mprotect(0x7f4dc9969000, 2097152, PROT_NONE) = 0 mmap(0x7f4dc9b69000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b5000) = 0x7f4dc9b69000 mmap(0x7f4dc9b6f000, 17624, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9b6f000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200l\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=135366, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9f91000 mmap(NULL, 2212904, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4dc9597000 mprotect(0x7f4dc95af000, 2093056, PROT_NONE) = 0 mmap(0x7f4dc97ae000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7f4dc97ae000 mmap(0x7f4dc97b0000, 13352, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f4dc97b0000 close(3) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9f90000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9f8f000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9f8e000 arch_prctl(ARCH_SET_FS, 0x7f4dc9f8f700) = 0 mprotect(0x7f4dc9b69000, 16384, PROT_READ) = 0 mprotect(0x7f4dc97ae000, 4096, PROT_READ) = 0 mprotect(0x7f4dc9d7a000, 4096, PROT_READ) = 0 mprotect(0x615000, 4096, PROT_READ) = 0 mprotect(0x7f4dc9f9e000, 4096, PROT_READ) = 0 munmap(0x7f4dc9f92000, 40659) = 0 set_tid_address(0x7f4dc9f8f9d0) = 16683 set_robust_list(0x7f4dc9f8f9e0, 0x18) = 0 futex(0x7fffc3b2d1cc, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 1, NULL, 7f4dc9f8f700) = -1 EAGAIN (Resource temporarily unavailable) rt_sigaction(SIGRTMIN, {0x7f4dc959d750, [], SA_RESTORER|SA_SIGINFO, 0x7f4dc95a6cb0}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {0x7f4dc959d7e0, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7f4dc95a6cb0}, NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0 brk(0) = 0x2479000 brk(0x249a000) = 0x249a000 rt_sigaction(SIGINT, {0x4049c0, [INT], SA_RESTORER|SA_RESTART, 0x7f4dc97ea4a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGTERM, {0x4049c0, [TERM], SA_RESTORER|SA_RESTART, 0x7f4dc97ea4a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGQUIT, {0x4049c0, [QUIT], SA_RESTORER|SA_RESTART, 0x7f4dc97ea4a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGALRM, {0x4049c0, [ALRM], SA_RESTORER|SA_RESTART, 0x7f4dc97ea4a0}, {SIG_DFL, [], 0}, 8) = 0 socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3 connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) close(3) = 0 socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3 connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) close(3) = 0 open("/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=475, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9f9b000 read(3, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 475 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7f4dc9f9b000, 4096) = 0 open("/etc/host.conf", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=92, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9f9b000 read(3, "# The \"order\" line is only used "..., 4096) = 92 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7f4dc9f9b000, 4096) = 0 futex(0x7f4dc9b71b40, FUTEX_WAKE_PRIVATE, 2147483647) = 0 open("/etc/resolv.conf", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=199, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9f9b000 read(3, "# Dynamic resolv.conf(5) file fo"..., 4096) = 199 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7f4dc9f9b000, 4096) = 0 uname({sys="Linux", node="zabbix", ...}) = 0 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=40659, ...}) = 0 mmap(NULL, 40659, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f4dc9f92000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@!\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=52120, ...}) = 0 mmap(NULL, 2148472, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4dc938a000 mprotect(0x7f4dc9396000, 2093056, PROT_NONE) = 0 mmap(0x7f4dc9595000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xb000) = 0x7f4dc9595000 close(3) = 0 mprotect(0x7f4dc9595000, 4096, PROT_READ) = 0 munmap(0x7f4dc9f92000, 40659) = 0 open("/etc/hosts", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=240, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9f9b000 read(3, "127.0.0.1\tlocalhost\n127.0.1.1\tza"..., 4096) = 240 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7f4dc9f9b000, 4096) = 0 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=40659, ...}) = 0 mmap(NULL, 40659, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f4dc9f92000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libnss_dns.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\17\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=31104, ...}) = 0 mmap(NULL, 2126064, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4dc9182000 mprotect(0x7f4dc9189000, 2093056, PROT_NONE) = 0 mmap(0x7f4dc9388000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f4dc9388000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libresolv.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\2209\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=105288, ...}) = 0 mmap(NULL, 2210424, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f4dc8f66000 mprotect(0x7f4dc8f7e000, 2097152, PROT_NONE) = 0 mmap(0x7f4dc917e000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18000) = 0x7f4dc917e000 mmap(0x7f4dc9180000, 6776, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9180000 close(3) = 0 mprotect(0x7f4dc917e000, 4096, PROT_READ) = 0 mprotect(0x7f4dc9388000, 4096, PROT_READ) = 0 munmap(0x7f4dc9f92000, 40659) = 0 stat("/etc/resolv.conf", {st_mode=S_IFREG|0644, st_size=199, ...}) = 0 open("/etc/resolv.conf", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=199, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9f9b000 read(3, "# Dynamic resolv.conf(5) file fo"..., 4096) = 199 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7f4dc9f9b000, 4096) = 0 uname({sys="Linux", node="zabbix", ...}) = 0 socket(PF_INET, SOCK_DGRAM|SOCK_NONBLOCK, IPPROTO_IP) = 3 connect(3, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("150.162.1.33")}, 16) = 0 poll([{fd=3, events=POLLOUT}], 1, 0) = 1 ([{fd=3, revents=POLLOUT}]) sendto(3, "\363y\1\0\0\1\0\0\0\0\0\0\4imap\4mail\4ufsc\2br\0\0"..., 35, MSG_NOSIGNAL, NULL, 0) = 35 poll([{fd=3, events=POLLIN}], 1, 5000) = 1 ([{fd=3, revents=POLLIN}]) ioctl(3, FIONREAD, [115]) = 0 recvfrom(3, "\363y\201\200\0\1\0\1\0\1\0\2\4imap\4mail\4ufsc\2br\0\0"..., 1024, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("150.162.1.33")}, [16]) = 115 close(3) = 0 stat("/etc/resolv.conf", {st_mode=S_IFREG|0644, st_size=199, ...}) = 0 socket(PF_INET, SOCK_DGRAM|SOCK_NONBLOCK, IPPROTO_IP) = 3 connect(3, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("150.162.1.33")}, 16) = 0 poll([{fd=3, events=POLLOUT}], 1, 0) = 1 ([{fd=3, revents=POLLOUT}]) sendto(3, "\317\377\1\0\0\1\0\0\0\0\0\0\4imap\4mail\4ufsc\2br\0\0"..., 35, MSG_NOSIGNAL, NULL, 0) = 35 poll([{fd=3, events=POLLIN}], 1, 5000) = 1 ([{fd=3, revents=POLLIN}]) ioctl(3, FIONREAD, [103]) = 0 recvfrom(3, "\317\377\201\200\0\1\0\1\0\1\0\2\4imap\4mail\4ufsc\2br\0\0"..., 1024, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("150.162.1.33")}, [16]) = 103 close(3) = 0 open("/etc/gai.conf", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=3343, ...}) = 0 fstat(3, {st_mode=S_IFREG|0644, st_size=3343, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f4dc9f9b000 read(3, "# Configuration for getaddrinfo("..., 4096) = 3343 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7f4dc9f9b000, 4096) = 0 futex(0x7f4dc9b704a0, FUTEX_WAKE_PRIVATE, 2147483647) = 0 socket(PF_NETLINK, SOCK_RAW, 0) = 3 bind(3, {sa_family=AF_NETLINK, pid=0, groups=00000000}, 12) = 0 getsockname(3, {sa_family=AF_NETLINK, pid=16683, groups=00000000}, [12]) = 0 sendto(3, "\24\0\0\0\26\0\1\3\377\1\237R\0\0\0\0\0\0\0\0", 20, 0, {sa_family=AF_NETLINK, pid=0, groups=00000000}, 12) = 20 recvmsg(3, {msg_name(12)={sa_family=AF_NETLINK, pid=0, groups=00000000}, msg_iov(1)=[{"0\0\0\0\24\0\2\0\377\1\237R+A\0\0\2\10\200\376\1\0\0\0\10\0\1\0\177\0\0\1"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 108 recvmsg(3, {msg_name(12)={sa_family=AF_NETLINK, pid=0, groups=00000000}, msg_iov(1)=[{"@\0\0\0\24\0\2\0\377\1\237R+A\0\0\n\200\200\376\1\0\0\0\24\0\1\0\0\0\0\0"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 320 recvmsg(3, {msg_name(12)={sa_family=AF_NETLINK, pid=0, groups=00000000}, msg_iov(1)=[{"\24\0\0\0\3\0\2\0\377\1\237R+A\0\0\0\0\0\0\1\0\0\0\24\0\1\0\0\0\0\0"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 20 close(3) = 0 socket(PF_INET6, SOCK_DGRAM, IPPROTO_IP) = 3 connect(3, {sa_family=AF_INET6, sin6_port=htons(10050), inet_pton(AF_INET6, "2801:84:0:2:150:162:2:71", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = 0 getsockname(3, {sa_family=AF_INET6, sin6_port=htons(49541), inet_pton(AF_INET6, "2801:84:0:1242:7801:ac8c:abb0:1f18", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, [28]) = 0 connect(3, {sa_family=AF_UNSPEC, sa_data="\0\0\0\0\0\0\0\0\0\0\0\0\0\0"}, 16) = 0 connect(3, {sa_family=AF_INET, sin_port=htons(10050), sin_addr=inet_addr("150.162.2.71")}, 16) = 0 getsockname(3, {sa_family=AF_INET6, sin6_port=htons(54105), inet_pton(AF_INET6, "::ffff:150.162.242.65", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, [28]) = 0 close(3) = 0 socket(PF_INET6, SOCK_STREAM|SOCK_CLOEXEC, IPPROTO_TCP) = 3 fcntl(3, F_SETFD, FD_CLOEXEC) = 0 alarm(60) = 0 connect(3, {sa_family=AF_INET6, sin6_port=htons(10050), inet_pton(AF_INET6, "2801:84:0:2:150:162:2:71", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = -1 EACCES (Permission denied) alarm(0) = 60 close(3) = 0 write(2, "zabbix_get [16683]: ", 20zabbix_get [16683]: ) = 20 write(2, "Get value error: cannot connect "..., 86Get value error: cannot connect to [[imap.mail.ufsc.br]:10050]: [13] Permission denied) = 86 write(2, "\n", 1 ) = 1 exit_group(-1) = ? This is the dns address that is reverse of the IP. As you can see, zabbix works great. strace zabbix_get -s ldap.mail.ufsc.br -k 'agent.ping' execve("/usr/bin/zabbix_get", ["zabbix_get", "-s", "lda.mail.ufsc.br", "-k", "agent.ping"], [/* 15 vars */]) = 0 brk(0) = 0x212f000 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffec7738000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=40659, ...}) = 0 mmap(NULL, 40659, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ffec772e000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/librt.so.1", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340!\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=31752, ...}) = 0 mmap(NULL, 2128984, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffec7310000 mprotect(0x7ffec7317000, 2093056, PROT_NONE) = 0 mmap(0x7ffec7516000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7ffec7516000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200\30\2\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=1815224, ...}) = 0 mmap(NULL, 3929304, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffec6f50000 mprotect(0x7ffec7105000, 2097152, PROT_NONE) = 0 mmap(0x7ffec7305000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b5000) = 0x7ffec7305000 mmap(0x7ffec730b000, 17624, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ffec730b000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200l\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=135366, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffec772d000 mmap(NULL, 2212904, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffec6d33000 mprotect(0x7ffec6d4b000, 2093056, PROT_NONE) = 0 mmap(0x7ffec6f4a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7ffec6f4a000 mmap(0x7ffec6f4c000, 13352, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ffec6f4c000 close(3) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffec772c000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffec772b000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffec772a000 arch_prctl(ARCH_SET_FS, 0x7ffec772b700) = 0 mprotect(0x7ffec7305000, 16384, PROT_READ) = 0 mprotect(0x7ffec6f4a000, 4096, PROT_READ) = 0 mprotect(0x7ffec7516000, 4096, PROT_READ) = 0 mprotect(0x615000, 4096, PROT_READ) = 0 mprotect(0x7ffec773a000, 4096, PROT_READ) = 0 munmap(0x7ffec772e000, 40659) = 0 set_tid_address(0x7ffec772b9d0) = 16969 set_robust_list(0x7ffec772b9e0, 0x18) = 0 futex(0x7fff7f5a259c, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 1, NULL, 7ffec772b700) = -1 EAGAIN (Resource temporarily unavailable) rt_sigaction(SIGRTMIN, {0x7ffec6d39750, [], SA_RESTORER|SA_SIGINFO, 0x7ffec6d42cb0}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {0x7ffec6d397e0, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7ffec6d42cb0}, NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0 brk(0) = 0x212f000 brk(0x2150000) = 0x2150000 rt_sigaction(SIGINT, {0x4049c0, [INT], SA_RESTORER|SA_RESTART, 0x7ffec6f864a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGTERM, {0x4049c0, [TERM], SA_RESTORER|SA_RESTART, 0x7ffec6f864a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGQUIT, {0x4049c0, [QUIT], SA_RESTORER|SA_RESTART, 0x7ffec6f864a0}, {SIG_DFL, [], 0}, 8) = 0 rt_sigaction(SIGALRM, {0x4049c0, [ALRM], SA_RESTORER|SA_RESTART, 0x7ffec6f864a0}, {SIG_DFL, [], 0}, 8) = 0 socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3 connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) close(3) = 0 socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3 connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory) close(3) = 0 open("/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=475, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffec7737000 read(3, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 475 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7ffec7737000, 4096) = 0 open("/etc/host.conf", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=92, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffec7737000 read(3, "# The \"order\" line is only used "..., 4096) = 92 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7ffec7737000, 4096) = 0 futex(0x7ffec730db40, FUTEX_WAKE_PRIVATE, 2147483647) = 0 open("/etc/resolv.conf", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=199, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffec7737000 read(3, "# Dynamic resolv.conf(5) file fo"..., 4096) = 199 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7ffec7737000, 4096) = 0 uname({sys="Linux", node="zabbix", ...}) = 0 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=40659, ...}) = 0 mmap(NULL, 40659, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ffec772e000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@!\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=52120, ...}) = 0 mmap(NULL, 2148472, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffec6b26000 mprotect(0x7ffec6b32000, 2093056, PROT_NONE) = 0 mmap(0x7ffec6d31000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xb000) = 0x7ffec6d31000 close(3) = 0 mprotect(0x7ffec6d31000, 4096, PROT_READ) = 0 munmap(0x7ffec772e000, 40659) = 0 open("/etc/hosts", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=240, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffec7737000 read(3, "127.0.0.1\tlocalhost\n127.0.1.1\tza"..., 4096) = 240 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7ffec7737000, 4096) = 0 open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=40659, ...}) = 0 mmap(NULL, 40659, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ffec772e000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libnss_dns.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\17\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=31104, ...}) = 0 mmap(NULL, 2126064, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffec691e000 mprotect(0x7ffec6925000, 2093056, PROT_NONE) = 0 mmap(0x7ffec6b24000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7ffec6b24000 close(3) = 0 access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) open("/lib/x86_64-linux-gnu/libresolv.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\2209\0\0\0\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0644, st_size=105288, ...}) = 0 mmap(NULL, 2210424, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffec6702000 mprotect(0x7ffec671a000, 2097152, PROT_NONE) = 0 mmap(0x7ffec691a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18000) = 0x7ffec691a000 mmap(0x7ffec691c000, 6776, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ffec691c000 close(3) = 0 mprotect(0x7ffec691a000, 4096, PROT_READ) = 0 mprotect(0x7ffec6b24000, 4096, PROT_READ) = 0 munmap(0x7ffec772e000, 40659) = 0 stat("/etc/resolv.conf", {st_mode=S_IFREG|0644, st_size=199, ...}) = 0 open("/etc/resolv.conf", O_RDONLY|O_CLOEXEC) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=199, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffec7737000 read(3, "# Dynamic resolv.conf(5) file fo"..., 4096) = 199 read(3, "", 4096) = 0 close(3) = 0 munmap(0x7ffec7737000, 4096) = 0 uname({sys="Linux", node="zabbix", ...}) = 0 socket(PF_INET, SOCK_DGRAM|SOCK_NONBLOCK, IPPROTO_IP) = 3 connect(3, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("150.162.1.33")}, 16) = 0 poll([{fd=3, events=POLLOUT}], 1, 0) = 1 ([{fd=3, revents=POLLOUT}]) sendto(3, "\205q\1\0\0\1\0\0\0\0\0\0\3lda\4mail\4ufsc\2br\0\0\34"..., 34, MSG_NOSIGNAL, NULL, 0) = 34 poll([{fd=3, events=POLLIN}], 1, 5000) = 1 ([{fd=3, revents=POLLIN}]) ioctl(3, FIONREAD, [87]) = 0 recvfrom(3, "\205q\201\200\0\1\0\0\0\1\0\0\3lda\4mail\4ufsc\2br\0\0\34"..., 1024, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("150.162.1.33")}, [16]) = 87 close(3) = 0 socket(PF_INET, SOCK_DGRAM|SOCK_NONBLOCK, IPPROTO_IP) = 3 connect(3, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("150.162.1.33")}, 16) = 0 poll([{fd=3, events=POLLOUT}], 1, 0) = 1 ([{fd=3, revents=POLLOUT}]) sendto(3, "a\303\1\0\0\1\0\0\0\0\0\0\3lda\4mail\4ufsc\2br\0\0\34"..., 34, MSG_NOSIGNAL, NULL, 0) = 34 poll([{fd=3, events=POLLIN}], 1, 5000) = 1 ([{fd=3, revents=POLLIN}]) ioctl(3, FIONREAD, [87]) = 0 recvfrom(3, "a\303\201\200\0\1\0\0\0\1\0\0\3lda\4mail\4ufsc\2br\0\0\34"..., 1024, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("150.162.1.33")}, [16]) = 87 close(3) = 0 stat("/etc/resolv.conf", {st_mode=S_IFREG|0644, st_size=199, ...}) = 0 socket(PF_INET, SOCK_DGRAM|SOCK_NONBLOCK, IPPROTO_IP) = 3 connect(3, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("150.162.1.33")}, 16) = 0 poll([{fd=3, events=POLLOUT}], 1, 0) = 1 ([{fd=3, revents=POLLOUT}]) sendto(3, "\32\233\1\0\0\1\0\0\0\0\0\0\3lda\4mail\4ufsc\2br\0\0\1"..., 34, MSG_NOSIGNAL, NULL, 0) = 34 poll([{fd=3, events=POLLIN}], 1, 5000) = 1 ([{fd=3, revents=POLLIN}]) ioctl(3, FIONREAD, [102]) = 0 recvfrom(3, "\32\233\201\200\0\1\0\1\0\1\0\2\3lda\4mail\4ufsc\2br\0\0\1"..., 1024, 0, {sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("150.162.1.33")}, [16]) = 102 close(3) = 0 socket(PF_INET, SOCK_STREAM|SOCK_CLOEXEC, IPPROTO_TCP) = 3 fcntl(3, F_SETFD, FD_CLOEXEC) = 0 alarm(60) = 0 connect(3, {sa_family=AF_INET, sin_port=htons(10050), sin_addr=inet_addr("150.162.2.71")}, 16) = 0 write(3, "ZBXD\1", 5) = 5 write(3, "\v\0\0\0\0\0\0\0", 8) = 8 write(3, "agent.ping\n", 11) = 11 read(3, "ZBXD\1", 5) = 5 read(3, "\1\0\0\0\0\0\0\0", 8) = 8 read(3, "1", 2047) = 1 alarm(0) = 60 close(3) = 0 fstat(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 1), ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffec7737000 write(1, "1\n", 21 ) = 2 exit_group(0) = ? ping imap.mail.ufsc.br -c 2 PING imap.mail.ufsc.br (150.162.2.71) 56(84) bytes of data. 64 bytes from lda.mail.ufsc.br (150.162.2.71): icmp_req=1 ttl=63 time=0.171 ms 64 bytes from lda.mail.ufsc.br (150.162.2.71): icmp_req=2 ttl=63 time=0.202 ms --- imap.mail.ufsc.br ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 999ms rtt min/avg/max/mdev = 0.171/0.186/0.202/0.020 ms ping lda.mail.ufsc.br -c 2 PING lda.mail.ufsc.br (150.162.2.71) 56(84) bytes of data. 64 bytes from lda.mail.ufsc.br (150.162.2.71): icmp_req=1 ttl=63 time=0.268 ms 64 bytes from lda.mail.ufsc.br (150.162.2.71): icmp_req=2 ttl=63 time=0.454 ms --- lda.mail.ufsc.br ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 999ms rtt min/avg/max/mdev = 0.268/0.361/0.454/0.093 ms host 150.162.2.71 71.2.162.150.in-addr.arpa domain name pointer lda.mail.ufsc.br. |
Comment by Aleksandrs Saveljevs [ 2013 Dec 04 ] |
The fact that 150.162.2.71 has a pointer record to lda.mail.ufsc.br is not the only difference between these domains. The other difference is that "imap" also has an IPv6 record: $ dig any imap.mail.ufsc.br +short 2801:84:0:2:150:162:2:71 150.162.2.71 $ dig any lda.mail.ufsc.br +short 150.162.2.71 From what I gather from strace, in case of "imap" zabbix_get tries to connect to its IPv6 address and it is not allowed. Could you please check whether that is a problem? For instance, does "zabbix_get -s 2801:84:0:2:150:162:2:71 -k agent.ping" work? |
Comment by Bruno Galindro da Costa [ 2013 Dec 04 ] |
Not works too root@zabbix:~# zabbix_get -s 2801:84:0:2:150:162:2:71 -k agent.ping The tcp 10050 port is openned for ipv6 in imap: root@imap:~# netstat -tlnp |grep 10050 |
Comment by Aleksandrs Saveljevs [ 2013 Dec 04 ] |
I believe the problem is not on "imap", but on the host running zabbix_get. How about "telnet 2801:84:0:2:150:162:2:71 10050"? |
Comment by Bruno Galindro da Costa [ 2013 Dec 04 ] |
Yes, you are right. root@zabbix:~# telnet 2801:84:0:2:150:162:2:71 10050 I think Zabbix server isn't on the same ipv6 network of imap or isn't has an ipv6 route or there isn't a permissive tcp acl for ipv6 in our router. I think the last one is more probable. |
Comment by Aleksandrs Saveljevs [ 2013 Dec 04 ] |
So it seems there is nothing to fix on Zabbix side. Thank you for cooperation and quick responses! |
Comment by Bruno Galindro da Costa [ 2013 Dec 04 ] |
Ok, but Zabbix Server host has IPv4 communication with that host. root@zabbix:~# ping imap.mail.ufsc.br -c 2 — imap.mail.ufsc.br ping statistics — So, in my opinion, Zabbix Server could not ignore this fact even if the IPv6 communication doesn't works. It needs to try to establish the communication with IPv4. If isn't possible with both IPv4 and IPv6, then it will exit with an error. |
Comment by Aleksandrs Saveljevs [ 2013 Dec 05 ] |
That has already been reported elsewhere and can be solved under ZBX-3549. Closing as duplicate. |