Python Scapy路由器后面的dns请求

Python Scapy路由器后面的dns请求,python,dns,scapy,Python,Dns,Scapy,我正在使用Python/Scapy发送DNS请求。我的计算机的连接设置为使用网关的DNS。我的网关是我的路由器(Linksys LNK4500),位于192.168.1.1,我的路由器连接设置为使用8.8.8.8作为其DNS 如果我使用的目的地是路由器的地址,我会得到正确的响应 sr1(IP(dst="192.168.1.1")/UDP()/DNS(rd=1,qd=DNSQR(qname="www.cnn.com"))) 但是,如果我想使用不同的DNS服务器,例如谷歌的,我会尝试 sr1(IP

我正在使用Python/Scapy发送DNS请求。我的计算机的连接设置为使用网关的DNS。我的网关是我的路由器(Linksys LNK4500),位于192.168.1.1,我的路由器连接设置为使用8.8.8.8作为其DNS

如果我使用的目的地是路由器的地址,我会得到正确的响应

sr1(IP(dst="192.168.1.1")/UDP()/DNS(rd=1,qd=DNSQR(qname="www.cnn.com")))
但是,如果我想使用不同的DNS服务器,例如谷歌的,我会尝试

sr1(IP(dst="8.8.8.8")/UDP()/DNS(rd=1,qd=DNSQR(qname="www.cnn.com")))

我收到一个响应“警告:未找到到达目的地的Mac地址。使用广播。”然后数据包被发送,但我一直在接收数据包,没有应答。

我认为您不应该使用8.8.8.8。作为IP.dst,因为首先数据包应该定向到您的路由器,然后路由器将数据包发送到Google DNS服务器

您确定您的默认网关定义正确吗?
route
命令的输出是什么?