标签: reverse-dns

加快对大量 IP 的反向 DNS 查找

出于分析目的,我想对大量 IP 执行反向 DNS 查找。“大”的意思,每小时至少几万。我正在寻找提高处理速度的方法,即降低每批的处理时间。

Dns.GetHostEntry的异步版本包装到可等待任务中已经有很大帮助(与顺序请求相比),导致吞吐量约为。100-200 IPs/秒:

static async Task DoReverseDnsLookups()
{
    // in reality, thousands of IPs
    var ips = new[] { "173.194.121.9", "173.252.110.27", "98.138.253.109" }; 
    var hosts = new Dictionary<string, string>();

    var tasks =
        ips.Select(
            ip =>
                Task.Factory.FromAsync(Dns.BeginGetHostEntry,
                    (Func<IAsyncResult, IPHostEntry>) Dns.EndGetHostEntry, 
                    ip, null)
                    .ContinueWith(t => 
                    hosts[ip] = ((t.Exception == null) && (t.Result != null)) 
                               ? t.Result.HostName : null));

    var start = DateTime.UtcNow;
    await Task.WhenAll(tasks);
    var end = DateTime.UtcNow;

    Console.WriteLine("Resolved {0} IPs in {1}, that's {2}/sec.", 
      ips.Count(), …
Run Code Online (Sandbox Code Playgroud)

.net c# dns reverse-dns async-await

5
推荐指数
2
解决办法
2427
查看次数

为什么 ReverseDNS / getHostName() 对于某些地址来说超级慢?

我们在沙盒 Java Applet 中遇到问题,因为 SecurityManager 执行反向 DNS 查找。见其他问题

但潜在的问题是,反向 DNS 查找需要大约 4.5 秒(没有域结果)。问题不是丢失的结果(在这种情况下它返回 IP),只是它需要很长时间。

这个问题也与 SecurityManager 无关,它只会在那里成为一个问题,因为 Permissions 类在运行到这个时持有一个锁,因此冻结了许多其他线程 4.5(或更多)秒。

还有一些域没有域名结果(即返回 IP),不需要 4.5 秒。例如“staminus.net”。

SSCCE:

String host = "random.org";
// "random.org" - IP result, takes 4.5 seconds
// "cdn.knuddelscom.de" - IP result, takes 4.5 seconds
// "staminus.net" - IP result, fast
// "google.com" - domain result: fra15s11-in-f14.1e100.net, fast
InetAddress addr = Inet4Address.getByName(host);
for (int i = 0; i < 100; i++)
{
    long start = System.currentTimeMillis();
    String hostName …
Run Code Online (Sandbox Code Playgroud)

java timeout reverse-dns freeze

5
推荐指数
0
解决办法
1697
查看次数

自定义Docker反向DNS

我正在寻找一种方法来更改反向DNS在Docker中解析的内容。

如果将容器的FQDN设置为,foo.bar我希望对其IP解析为反向DNS查找foo.bar,但它始终解析为<container_name>.<network_name>

有办法改变吗?

reverse-dns docker

5
推荐指数
1
解决办法
523
查看次数

如何从您的应用程序发送干净的电子邮件?

在开发发送通知电子邮件消息的应用程序时,有哪些最佳实践

  1. 不会被您的托管公司标记为垃圾邮件发送者.(覆盖任何:)
    • 不淹没邮件服务器的最佳技术
    • 最好的邮件服务器产品,如果你要自己设置
    • 发送消息,好像来自特定用户,但仍然清楚地从您的应用程序(以确保投诉等回复给您),而不会破坏良好的电子邮件礼仪
    • 任何其他经验教训
  2. 没有被接收者的客户端标记为垃圾邮件?(覆盖任何:)
    • 配置和使用sender-id,domain-keys,SPF,reverse-dns等,以确保正确识别您的电子邮件
    • 最好的SMTP标头技术,以避免在为用户发送电子邮件时被标记为垃圾邮件(例如,同时使用Sender和From标头)
    • 任何其他经验教训

附加要求:此应用程序将根据事件向单个收件人发送单个邮件.因此,向多个收件人发送相同邮件的技术将不适用.

email smtp reverse-dns spf

4
推荐指数
1
解决办法
1459
查看次数

在python中使用scapy反向dns查找

如何scapy在Python中使用反向DNS查找?我在谷歌寻找它,但我找不到与此主题相关的内容.

python reverse-dns scapy

4
推荐指数
2
解决办法
4465
查看次数

spamassassin rdns reversns

Spamassasin在我的电子邮件中给出以下标志:

*

0.8 RDNS_NONE由没有rDNS的主机传送到内部网络

"此测试检查最后一个不可信中继是否存在反向DNS条目.请注意,这可以通过解释相关Received头中的信息来完成 - 如果第一个可信中继不执行反向DNS检查,或者它们是如果没有记录在Received标题中,将触发此测试(无论实际的rDNS状态如何)."

*

我可以在我的电子邮件中看到的唯一的IP是94.143.11.2 - >你可以将dns转换为trophymanager.com.Google和Hotmail对此没有任何问题 - 但Spamassassin给它一个标志 - 我在这里缺少什么?

php email reverse-dns spamassassin phpmailer

4
推荐指数
1
解决办法
1万
查看次数

使用Elastic Beanstalk时如何处理AWS EC2实例报废

我收到了AWS发来的电子邮件

我们有关于您的帐户的重要新闻(AWS账户ID:XXXXX).EC2已检测到eu-west-1区域中托管Amazon EC2实例(实例ID:i-XXXX)的底层硬件的性能下降.由于这种降级,您的实例可能已无法访问.在2017-05-25 10:00 UTC之后,您的实例(具有EBS卷作为根设备)将被停止.

我实际上正在使用带有弹性IP地址的负载均衡器的Elastic Beanstalk,这是当前唯一运行的实例(手动关联).另外,我有一个反向DNS用于电子邮件目的.

电子邮件继续说下面......

您仍然可以访问该实例.我们建议您通过创建实例的AMI来替换实例,并从AMI启动新实例.有关详细信息,请参阅EC2用户指南中的Amazon Machine Images(http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html).如果在停止EBS支持的实例时遇到困难,请参阅实例常见问题解答(http://aws.amazon.com/instance-help/#ebs-stuck-stopping).

那么如何让Elastic Beanstalk重新配置到新硬件?

一些选择似乎是......

重建环境

保存配置 - >终止 - >加载配置

克隆环境 - >手动更改DNS - >终止旧环境

'终止'环境 - >'恢复终止环境'?

我不确定哪种变体会恢复环境,特别是如果我没有丢失为电子邮件(SNS?)配置完成的主机名/反向DNS内容,那将是理想的.

如果我保留所有这些(我不关心EC2实例或数据 - 将数据保存在所有这些外部的MongoDb中)会很好...

  • EC2配置(即硬件盒大小,VM参数等)
  • 安全组
  • 负载均衡器
  • 与EC2关联的弹性IP(以后手动操作很容易)
  • 主机名(反向DNS所需的任何内容)

我们将不胜感激! - 令人遗憾的是,他们的电子邮件/文档只讨论了EC2而不是beanstalk配置.

reverse-dns amazon-ec2 amazon-web-services amazon-elastic-beanstalk

4
推荐指数
1
解决办法
1282
查看次数

在Python中,获取有关IP地址的更多信息

gethostbyaddr在Python中知道,这对我有用.我希望得到更多关于IP地址的信息,就像人们可以在各种网站上找到的那样,例如谁拥有该IP地址,原籍国,......等等.我需要以编程方式完成此操作.

是否有用于Python的内置命令,或者我是否需要访问包含此类信息的某个数据库,或者是否有任何Python API?Python不是我的母语,所以我不熟悉如何在Python中解决这样的问题.

python reverse-dns gethostbyaddr pywhois

3
推荐指数
1
解决办法
2999
查看次数

反向DNS,发送电子邮件和主机名

我根本不理解这个"反向dns"的事情.

所以,我有一个网站 - www.someurl.com,我有一个IP地址 - http://180.160.160.190(假的).现在,我想设置一个"反向dns"的东西,这样我发出的电子邮件就不会被标记为垃圾邮件.

问题!

  1. 为什么我要设置"反向dns"的东西?什么它,为什么它的Gmail,Hotmail服务等护理?
  2. 网上的所有例子都说我需要将"hostname"设置为mail.someurl.com(好吧,他们说mail.domainname.com,但我巧妙地解决了x).什么是"主机名",什么是"网址"?主机名的维基百科页面让我感到困惑.
  3. 是一个域名网址?它肯定不是主机名(我希望).
  4. 回到mail.someurl.com主机名 - 为什么它在示例中是"邮件"?我可以毫无顾忌地将值设置为"hello"或"mooseymooseymoose"(所以它会是mooseymooseymoose.someurl.com)吗?它与任何东西都有任何关联吗?
  5. 如果我发送电子邮件为no-reply@someurl.com,是否与主机名的第一位有关?也就是说,如果它们来自"mail@someurl.com",主机名是mail.someurl.com吗?

欢呼,安德鲁

email url reverse-dns hostname domain-name

3
推荐指数
1
解决办法
1066
查看次数

EC2实例的PTR记录(无弹性ip)未传播

我根据本文在EC2实例上设置了PTR记录:https : //aws.amazon.com/premiumsupport/knowledge-center/route-53-reverse-dns/。但是,当我使用dig这样的工具测试rDNS时,其结果始终为我提供xxx.compute.amazonaws.com域。我已经等待了几次刷新时间,并多次执行了本文中的步骤,但是记录没有改变。我还为“ in-addr.arpa”托管区域设置了NS记录,以匹配我域的NS记录。

我的设置是:

Hosted zone 1: "domain.com." 
Hosted zone 1 A record: name "domain.com." value "1.2.3.4"
Hosted zone 2: "3.2.1.in-addr.arpa." 
Hosted zone 2 PTR record: name "4.3.2.1.in-addr.arpa." value "domain.com"
Run Code Online (Sandbox Code Playgroud)

我在这里想念什么吗?我还有其他步骤应该采取吗?或者您对如何进一步调试有任何建议?

好像outlook.com一直将我的邮件标记为垃圾邮件,因为rDNS不正确。

很感谢任何形式的帮助。

reverse-dns amazon-ec2 amazon-web-services amazon-route53

3
推荐指数
1
解决办法
2913
查看次数

Python 套接字:gethostbyaddr:反向 DNS 查找失败

socket.gethostbyaddr(ip_addr)我在特定站点上使用时获取主机名时遇到问题。

我不会详细说明这不适用于哪个网站。

因此,通过名称获取主机对于到目前为止我尝试过的每个站点都可以正常工作,但是当我尝试从中获取站点名称时,我收到一条错误消息 ing host not found

修复或替代方案对于拥有完整的数据来说是很好的。如果没有解决办法,我只能省略主机名。没什么大不了的。谢谢您的帮助。

# not full code
hostip = socket.gethostbyname(hostname)
print socket.gethostbyaddr(hostip)

Error: socket.herror: [Errno 11004] host not found
Run Code Online (Sandbox Code Playgroud)

python sockets reverse-dns gethostbyaddr

2
推荐指数
1
解决办法
9370
查看次数

使用Azure资源管理器时,使用静态IP反向DNS

我非常清楚Azure Cloud Services上可以使用反向DNS.那不是我要问的.我需要知道在使用Azure资源管理器时是否可行.我在网上看了很多,虽然我发现了一些(2年以上)的老问题,但我找不到任何答案.

谢谢!

reverse-dns azure

2
推荐指数
2
解决办法
5785
查看次数