我有一个安装了数据库的主机。为了访问数据库,客户端使用DNS别名( AliasOne )和数据库端口。
DNS别名由其他部门的同事管理。
我不得不为同一台主机请求一个更明确的别名-- AliasTwo。
现在:我需要删除AliasOne :如何检查哪些别名用于连接主机/数据库?
iptables -A -p tcp -s AliasOne -dport 3306 -j日志-日志前缀"AliasOne:“- LOG -tcp-选项--log选项
但是它用主机名翻译别名,因此,它还将记录AliasTwo的连接尝试。
有什么线索吗?(我不希望服务中断,所以“删除并查看是否有人投诉”不是一种选择;)
发布于 2019-01-30 14:35:53
除非协议明确要求在握手/请求中包含主机名,否则您无法从服务器中确定客户端用于连接的主机名。客户端只需连接到主机名或别名解析到的ip地址。(有关更多背景信息,请参见这个问答。)
据我所知,MySQL在握手https://dev.mysql.com/doc/internals/en/connection-phase.html中不包括主机名
一种方法可能是用额外的ip地址(临时)配置服务器,并将每个主机名/别名指向不同的ip地址,然后使用的ip地址将确定所使用的主机名。或者,监视您的DNS服务器,并为不推荐的别名注册查找。
https://serverfault.com/questions/951482
复制相似问题