"Net.c: 577: sendmsg () fehlgeschlagen: Operation nicht erlaubt" in dig Output


8

Ich verwende die Version Bind 9.10.2 auf einem CentOS 6.6-Computer. Während ich den Befehl dig ausführe, erhalte ich eine net.c:577: sendmsg() failed: Operation not permitted"Benachrichtigung.

Das Dienstprogramm dig gibt mir eine Antwort, aber oben wird diese Benachrichtigung angezeigt.

$dig nkn.in +short   
**net.c:577: sendmsg() failed: Operation not permitted**  
164.100.129.98

System Information :-  
cat /etc/*-release   
CentOS release 6.6 (Final)   
LSB_VERSION=base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch    
CentOS release 6.6 (Final)   
CentOS release 6.6 (Final)

Kann mir bitte jemand helfen, warum ich diese Benachrichtigung erhalte?

IPv6-Firewall-Regelsätze: -

*filter  
:INPUT DROP [0:0]  
:FORWARD DROP [0:0]  
:OUTPUT DROP [0:0]  
:LOGGING - [0:0]  
-A INPUT -i lo -j ACCEPT  
-A INPUT -p icmpv6 -j ACCEPT   
-A INPUT -p udp --dport 5353 -d ff02::fb -j ACCEPT  
-A INPUT -p udp -m udp --dport 631 -j ACCEPT  
-A INPUT -p tcp -m tcp --dport 631 -j ACCEPT  
-A INPUT -p udp -m udp --dport 53 -j ACCEPT  
-A INPUT -p tcp -m tcp --dport 53 -j ACCEPT  
-A OUTPUT -p icmpv6 --icmpv6-type echo-reply -j ACCEPT  
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT  
-A INPUT -m udp -p udp --sport 1812 -j ACCEPT  
-A INPUT -m udp -p udp --sport 1813 -j ACCEPT 
-A INPUT -s fe80::/64 -j ACCEPT  
-A INPUT -s ff02::/64 -j ACCEPT  
-A INPUT -j LOG --log-prefix "IP6Tables:INPUT " --log-level 7  
-A OUTPUT -p udp -m udp --dport 53 -j ACCEPT  
-A OUTPUT -p tcp -m tcp --dport 53 -j ACCEPT  
-A OUTPUT -p icmpv6 -j ACCEPT  
-A OUTPUT -p icmpv6 --icmpv6-type echo-request -j ACCEPT  
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT  
-A OUTPUT -d 2001:db8::/32 -j ACCEPT  
-A OUTPUT -d fe80::/64 -j ACCEPT  
-A OUTPUT -d ff02::/64 -j ACCEPT  
-A OUTPUT -j LOG --log-prefix "IP6Tables:OUTPUT " --log-level 7  
-A LOGGING -m limit --limit 2/min -j LOG --log-prefix "IP6Tables-Dropped: "  
-A LOGGING -j DROP  
COMMIT  

Wahrscheinlich ein Netzwerk- / Routing-Problem. Können Sie alle Nameserver in Ihrem kontaktieren /etc/resolv.conf?
Jenny D

@JennyD ... Es ist ein DNS-Server .. Und mit Eintrag wie 'Nameserver 127.0.0.1' und ich bin in der Lage, die Domänen aufzulösen.
Gaurav Kansal

1
@kayess ... Mein Firewall-Regelsatz wird im Fragenbereich aktualisiert. Bitte helfen Sie mir, was daran falsch ist.
Gaurav Kansal

Antworten:


7

In meinem Arch Linux hat es geholfen, eine ip6tables-Firewall-Regel hinzuzufügen, um das Senden lokaler udp-Pakete von localhost an localhost zu ermöglichen:

ip6tables -I OUTPUT 1 -p udp -s 0000:0000:0000:0000:0000:0000:0000:0001 \ 
-d 0000:0000:0000:0000:0000:0000:0000:0001 -j ACCEPT

2
Irgendeine Idee, warum IP6tables eine Warnung ohne die obige Regel generierte?
Gaurav Kansal

1
@GauravKansal: Wenn Sie eine IP-Adresse mit einer Funktion wie abrufen getaddrinfo(), erhalten Sie eine Liste mit Möglichkeiten. Wenn IPv6 aktiviert ist, ist dies in der Antwort enthalten und wird jetzt zuerst angezeigt. Das bedeutet, dass Tools wie digund hostzuerst mit der IPv6-Adresse versuchen, dann mit IPv4.
Alexis Wilke

1

Haben Sie versucht, dieses Ziel mit einem anderen Protokoll zu erreichen? Wie ICMP?

Dieser Fehler weist möglicherweise darauf hin, dass Sie keine Rechte zum Ausführen dieser Aktion haben oder durch eine Firewall-Regel blockiert sind.


Sie können versuchen, denselben Befehl wie root auszuführen. Wenn dies fehlschlägt, können Sie versuchen, die iptables-Firewall gegebenenfalls vorübergehend zu deaktivieren, und es erneut versuchen.
Basos

1
@basos Das Deaktivieren der Firewally ist keine gute Methode zur Fehlerbehebung. Das Richtige wäre, in den Firewall-Protokollen nachzusehen, ob sich etwas darin verfängt.
Jenny D

Ich glaube, diese Antwort bezieht sich auf etwas. Ich habe gesehen, dass diese Fehlermeldung erzeugt wird, wenn ein Prozess versucht, ein UDP-Paket zu senden, das durch eine iptablesRegel in der OUTPUTKette blockiert wird .
Kasperd

1
@basos .... Ya ich hatte auch von root versucht .. Aber das gleiche Problem .... Nach dem Deaktivieren der IPv6-Firewall erhalte ich keine Dis-Benachrichtigung.
Gaurav Kansal

1
@kansal, kannst du erklären, was du mit "Benachrichtigung" meinst?
Basos
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.