迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

Python 中的 DNS 查找

作者:迹忆客 最近更新:2023/06/25 浏览次数:

本文将讨论 DNS 和 DNS 查找的概念。 之后,我们讨论使用 Python 进行 DNS 查找的方法。


什么是 DNS

DNS(域名系统)将域名转换为公共IP地址。 DNS 服务器将任何网站的域名转换为该网站主机服务器的公共 IP。


DNS查询

DNS 查找是一个过程,每当任何用户点击网站域名或根据公共 IP 查找域名时,就会启动查找任何网站的公共 IP。

DNS 查找有两种类型:

  1. 正向 DNS 查找

    正向 DNS 查找也称为正向 DNS。 它是通过使用 DNS 服务器解析域名来查找任何域的公共 IP 的过程。

  2. 反向 DNS 查找

    反向 DNS 查找与正向 DNS 查找相反。 这是一个根据公共 IP 地址查找域名的过程。

DNS 查找命令

nslookup 命令根据主机名查找 IP 地址或域名系统。 例如,nslookup google.com 输出如下所示。

nslookup

nslookup google.com 命令显示域名系统和主机 google.com 的公共 IP。


Python 中的 DNS 查找

我们可以使用以下代码在 Python 中查找任何域的主机名或公共 IP。

import socket
ip_addr = socket.gethostbyname('www.google.com')
print(ip_addr)

Python 库的套接字提供了不同的函数和方法来开发基于网络的应用程序,包括服务器-客户端程序。 gethostbyname 函数用于查找任何主机名的公共 IP 地址。

gethostbyname 仅返回主机名的 IP 地址,而不考虑操作系统配置的规则。 但是,我们可以找到操作系统所有配置规则的主机名信息。

考虑以下代码,用于在不忽略操作系统配置规则的情况下查找地址信息。

import socket
print(socket.getaddrinfo('www.google.com', 80))

Python中socket库的getaddrinfo函数用于结合操作系统配置的规则来获取与主机名相关的信息。

getaddrinfo 函数返回包含 5 个元素 familysocktypeprotosockaddr 的列表。

family、socktype 和 proto 是可以与 socket() 一起使用的整数。 canonname 是一个显示主机规范名称的字符串 sockaddr 是一个包含地址和端口两个元素的元组。

上一篇:了解 Python 中的槽

下一篇:没有了

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

了解 Python 中的槽

发布时间:2023/06/25 浏览次数:167 分类:Python

本文将讨论槽常量变量在 Python 中的工作原理以及它如何比使用字典更好。了解 Python 中的槽

在 Python 中设置 HTTP 代理设置

发布时间:2023/06/25 浏览次数:141 分类:Python

在本文中,我们将讨论如何在我们的计算机和Python中设置HTTP代理设置。使用export命令在Python中设置HTTP代理设置

Pipenv 指定Python版本

发布时间:2023/06/25 浏览次数:88 分类:Python

本文讨论了使用 Pipenv 创建具有特定 Python 版本的虚拟环境的几种方法。 我们将列出先决条件并解释如何使用 pipelinev 所需的命令在虚拟环境中安装特定版本的 Python。

Python 验证 IP 地址

发布时间:2023/06/25 浏览次数:65 分类:Python

冒号分隔组 (:)。 在本指南中,我们将验证 IPv4 地址。在 Python 中验证 IP 地址验证IP地址意味着检查输入的IP是否有效。

Python 中的随机 IP 地址生成器

发布时间:2023/06/22 浏览次数:56 分类:Python

Python 提供了多个可用于打印随机 IP 地址的模块。 本教程将教您在 Python 中以字符串形式生成随机 IP 地址。使用 Faker 模块在 Python 中生成随机 IP 地址作为字符串

在 Python 中运行单元测试

发布时间:2023/06/22 浏览次数:138 分类:Python

在称为单元测试的软件开发过程中,检查应用程序中较小的、可独立测试的组件(称为单元)的功能。 Python unittest 模块允许我们运行单元测试。本文将讨论单元测试以及如何在 Python 中进行测

Python 单元测试发现

发布时间:2023/06/22 浏览次数:118 分类:Python

本文将向我们介绍单元测试以及如何针对特定代码段运行它。 我们将学习 discover 命令的用法来自动识别模块名称,以及为什么它在 Python 中可能不起作用。

Python 中的参数化单元测试

发布时间:2023/06/22 浏览次数:80 分类:Python

在 Python 中,我们可以使用参数化单元测试为每个项目或测试用例生成一个测试。 本文将探讨 Python 的参数化单元测试。Python 中参数化单元测试的目的 当开发人员编写单元测试时,他们通常采

Python Unittest 和 Pytest

发布时间:2023/06/22 浏览次数:107 分类:Python

这篇文章的主要目的是讨论Python中两个最常用的单元测试框架unittest和pytest,它们的优缺点以及在何时选择哪个框架。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便