位置: 编程技术 - 正文

基于Python Shell获取hostname和fqdn释疑(python-shell)

编辑:rootadmin

推荐整理分享基于Python Shell获取hostname和fqdn释疑(python-shell),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python-shell,python 3.7.4 shell,python 3.4.3 shell,python 3.7.4 shell,python 3.7.4 shell,shell调用python获取返回值,shell调用python获取返回值,python获取shell输出,内容如对您有帮助,希望把文章链接给更多的朋友!

一直以来被Linux的hostname和fqdn(Fully Qualified Domain Name)困惑了好久,今天专门抽时间把它们的使用细节弄清了。

一、设置hostname/fqdn

在Linux系统内设置hostname很简单,如:

$ hostname florian

如果要设置fqdn的话,需要对/etc/hosts进行配置。

/etc/hosts配置文件的格式是:

ip fqdn [alias]...

即第一列为主机ip地址,第二列为主机fqdn地址,第三列以后为别名,可以省略,否则至少要包含hostname。

上述配置文件的配置项的第一行为localhost的配置,第二行为主机名florian配置fqdn=florian.test.com,ip=..1.1。至于fqdn的域名后缀,最好和文件/etc/sysconfig/network的HOSTNAME配置保持一致:

二、查看hostname/fqdn

配置完成后,可以使用shell命令查看hostname和fqdn:

使用ping去测试hostname的ip映射是否成功。

也可以使用python命令获取hostname和fqdn。

三、使用ip设置hostname带来的fqdn问题

以上描述了正常设置hostname和fqdn的方法,但是有时会使用ip地址直接作为hostname,此时会有些不同。

我们发现使用ip作为hostname后,使用shell命令查询hostname和fqdn都是ip地址!!!这是因为DNS协议会解析hostname的内容,当发现其为ip地址时,则不会再去查询/etc/hosts文件。

再使用python查看一下,会发现python获取的fqdn竟然还是florian.test.com!!!

即便是刷新dns缓存也无济于事:

$ service nscd reload

基于Python Shell获取hostname和fqdn释疑(python-shell)

将/etc/hosts文件的第二行注释:

刷新dns缓存:

$ service nscd reload

我们发现fqdn恢复正常了。

之所以会有这样的行为,是因为python解析fqdn的逻辑和DNS并不完全一致,它会根据hostname查询对应的ip地址,然后在/etc/hosts内获取ip地址对应的配置行(第一行有效),然后解析fqdn列和alias列,并返回第一个包含字符'.'的对应列的值。

因此,使用ip设置hostname时,需要注意两点:

&#;首先,将hostname设置为ip地址&#;其次,将/etc/hosts内包含该ip的配置项移除

为了保险起见,我们可以在/etc/hosts内尽可能靠前的位置添加如下配置:

这样,即便是之后有包含该ip的配置项也不会生效,python会优先解析第二行的配置项,并获取和ip地址完全一样的fqdn地址。当然,使用shell命令hostname获取fqdn也不会出错,因为hostname已经被设为ip地址形式了。

下面给大家介绍python shell 根据ip 获取 hostname || 根据hostname 获取 ip

利用 socket 模块 里的 gethostbyname 函数

方法2 利用 shell 中 hostname 命令

设计思路 ##

有时候socket不太稳定, 具体原因带查明

目的: 根据 ip 获取 hostname (适当改进也可逆转)

先设计了一个远程执行 ssh 命令jar, 或者可以用plink, 链接enter link description here

利用subprocess.call命令在远程ip机器上执行hostname > %s.hostname命令, 将hostname 信息输出到文件

用pscp将本地的pscp文件复制到远程ip机器上 /root 目录下(后来发现这步不需要)

然后利用本地的 pscp 将远程机器上带有hostname的文本文件/root/%s.hostname 复制到本地

利用 python 的文本读取功能读取信息, 从中取出hostname字符串

再利用 rm 命令把远程机器和本地的文本文件都删除

谈谈Python进行验证码识别的一些想法 用python加验证码为关键词在baidu里搜一下,可以找到很多关于验证码识别的文章。我大体看了一下,主要方法有几类:一类是通过对图片进行处理,然后

Python网站验证码识别 0x识别涉及技术验证码识别涉及很多方面的内容。入手难度大,但是入手后,可拓展性又非常广泛,可玩性极强,成就感也很足。验证码图像处理验证码图像

详解Python验证码识别 以前写过一个刷校内网的人气的工具,Java的(以后再也不行Java程序了),里面用到了验证码识别,那段代码不是我自己写的:-)校内的验证是完全单色没有

标签: python-shell

本文链接地址:https://www.jiuchutong.com/biancheng/381305.html 转载请保留说明!

上一篇:21行Python代码实现拼写检查器(20行的python编程题)

下一篇:谈谈Python进行验证码识别的一些想法(python验证整数)

  • 产权转移书据印花税计税依据
  • 法人工资怎么发最划算
  • 咨询费开发票选哪一项
  • 每月10万不要交税从什么时候开始
  • 互联网公司成本包括哪些
  • 发票与入库单明细不一致税务可以吗
  • 季报进入国税官网后怎么操作?
  • 税务季报都报啥
  • 居间费税收是多少
  • 主营业务收入怎么结转
  • 公司购买的一次性纸杯计入哪个科目
  • 支票入账怎么填写
  • 完工产品定额直接材料费用
  • 进口货物的关税税率
  • 两年利润都为负数,如何计算完成率
  • 发票有几个
  • 化妆品的消费税率多少
  • 某市财政收到林业基金收入分录
  • 推广的产品
  • 鸿蒙工具栏在哪里
  • 3%减按2%征收增值税政策
  • 人工装卸怎么办营业执照
  • win10重装系统后黑屏无图像
  • php设计思路
  • ccmexec.exe是什么程序
  • 微信小程序完美修真攻略
  • 如何利用http协议发布博客园博文评论
  • 投资公司要具备什么
  • vue2升级3
  • uniapp动态修改pages.json
  • yii框架连接数据库
  • 数据库防止重复数据
  • 领航ct
  • 计算机视觉项目文档
  • 财务章和公章下面数字一样吗
  • 通行费发票电子化 机场路
  • 研发样品收入的最新规定
  • 税务法是否允许私人经营
  • python复制文件的代码
  • 固定资产已提完折旧报废后如何处理
  • 税控盘的服务费可以抵扣吗
  • 哪些行业不适用税前加计扣除政策
  • mysql左连接和右连接语法
  • sql数据库聚集索引和非聚集索引的区别是什么?
  • 认缴意思
  • 进项税已认证转出账务处理
  • 库存商品冲回
  • 制造费用的明细账应当按照什么设置
  • 开办费账务处理实操案例
  • 工业增加值计算表(按生产法)
  • 发票先到后付款怎样做凭证
  • 企业注销在建工程怎么处理
  • 借贷不平衡是什么意思
  • 员工餐补是放入福利费吗?
  • 固定资产发票怎么处理
  • 停车费怎么入账会计分录
  • 三栏式明细账适用于原材料吗
  • 哪个行业的会计最难
  • 应收账款属于流动负债项目吗
  • sql没有数据库
  • 重装机兵
  • 通过分析SQL语句的执行计划优化SQL
  • 怎么操作win10系统
  • xp系统怎么设置系统启动项
  • linux 新手
  • xp系统怎么取消用户登录
  • macbook graphpad
  • win10企业版20h2和1909
  • dmg是啥文件
  • Node.js中的全局对象有
  • nodejs bff
  • ecmascript新特性
  • 如何用jquery
  • javascript面向对象 第三方类库
  • 如何动态加载外部文件
  • 购买服务合同模版
  • 浙江税务网上开票流程图
  • 报纸的增值税税目是什么
  • a级纳税人和一级的区别
  • 美国企业所得税税率2022
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设