Дублированный вывод whois

Кажется, у меня проблема с whois, который, по-видимому, дублирует вывод, к сожалению, это мешает одному из моих сценариев.

Я проверил это как на своем персональном ноутбуке, так и на своем сервере Ubuntu, я также проверил это на новой установке Ubuntu.

Это не проблема на моих серверах CentOs7. Однако я не проверял это в другом дистрибутиве.

Мое знание Ubuntu нас не так много по сравнению с CentOs, однако я не верю, что между этими утилитами будет такая большая разница.

Вот пример того, как это выглядит, когда я запускаю whois:

╔═══[Date: Sat Apr 27 Time: 05:04 AM]═[arctic@Sevastopol.foxdale.net]
╠══[Total Commands: 977]═[Issued Commands: 4]=[Logins: 2]
╠═[~]
╚[λ]-[$]>-➤ whois foxdale.net
   Domain Name: FOXDALE.NET
   Registry Domain ID: 1830382905_DOMAIN_NET-VRSN
   Registrar WHOIS Server: whois.namecheap.com
   Registrar URL: http://www.namecheap.com
   Updated Date: 2018-09-08T06:15:03Z
   Creation Date: 2013-10-08T18:25:51Z
   Registry Expiry Date: 2019-10-08T18:25:51Z
   Registrar: NameCheap, Inc.
   Registrar IANA ID: 1068
   Registrar Abuse Contact Email: abuse@namecheap.com
   Registrar Abuse Contact Phone: +1.6613102107
   Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
   Name Server: NS1.FOXDALE.NET
   Name Server: NS2.FOXDALE.NET
   DNSSEC: unsigned
   URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/
>>> Last update of whois database: 2019-04-27T10:37:41Z <<<

For more information on Whois status codes, please visit https://icann.org/epp

NOTICE: The expiration date displayed in this record is the date the
registrar's sponsorship of the domain name registration in the registry is
currently set to expire. This date does not necessarily reflect the expiration
date of the domain name registrant's agreement with the sponsoring
registrar.  Users may consult the sponsoring registrar's Whois database to
view the registrar's reported date of expiration for this registration.

TERMS OF USE: You are not authorized to access or query our Whois
database through the use of electronic processes that are high-volume and
automated except as reasonably necessary to register domain names or
modify existing registrations; the Data in VeriSign Global Registry
Services' ("VeriSign") Whois database is provided by VeriSign for
information purposes only, and to assist persons in obtaining information
about or related to a domain name registration record. VeriSign does not
guarantee its accuracy. By submitting a Whois query, you agree to abide
by the following terms of use: You agree that you may use this Data only
for lawful purposes and that under no circumstances will you use this Data
to: (1) allow, enable, or otherwise support the transmission of mass
unsolicited, commercial advertising or solicitations via e-mail, telephone,
or facsimile; or (2) enable high volume, automated, electronic processes
that apply to VeriSign (or its computer systems). The compilation,
repackaging, dissemination or other use of this Data is expressly
prohibited without the prior written consent of VeriSign. You agree not to
use electronic processes that are automated and high-volume to access or
query the Whois database except as reasonably necessary to register
domain names or modify existing registrations. VeriSign reserves the right
to restrict your access to the Whois database in its sole discretion to ensure
operational stability.  VeriSign may restrict or terminate your access to the
Whois database for failure to abide by these terms of use. VeriSign
reserves the right to modify these terms at any time.

The Registry database contains ONLY .COM, .NET, .EDU domains and
Registrars.
Domain name: foxdale.net
Registry Domain ID: 1830382905_DOMAIN_NET-VRSN
Registrar WHOIS Server: whois.namecheap.com
Registrar URL: http://www.namecheap.com
Updated Date: 2018-09-08T06:15:03.74Z
Creation Date: 2013-10-08T18:25:51.00Z
Registrar Registration Expiration Date: 2019-10-08T18:25:51.00Z
Registrar: NAMECHEAP INC
Registrar IANA ID: 1068
Registrar Abuse Contact Email: abuse@namecheap.com
Registrar Abuse Contact Phone: +1.6613102107
Reseller: NAMECHEAP INC
Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
Registry Registrant ID:
Registrant Name: WhoisGuard Protected
Registrant Organization:
Registrant Street: P.O. Box 0823-03411
Registrant City: Panama
Registrant State/Province: Panama
Registrant Postal Code:
Registrant Country: PA
Registrant Phone: +507.8365503
Registrant Phone Ext:
Registrant Fax: +51.17057182
Registrant Fax Ext:
Registrant Email: f7a93f5d87af478f876ff6f51b592cb0.protect@whoisguard.com
Registry Admin ID:
Admin Name: WhoisGuard Protected
Admin Organization:
Admin Street: P.O. Box 0823-03411
Admin City: Panama
Admin State/Province: Panama
Admin Postal Code:
Admin Country: PA
Admin Phone: +507.8365503
Admin Phone Ext:
Admin Fax: +51.17057182
Admin Fax Ext:
Admin Email: f7a93f5d87af478f876ff6f51b592cb0.protect@whoisguard.com
Registry Tech ID:
Tech Name: WhoisGuard Protected
Tech Organization:
Tech Street: P.O. Box 0823-03411
Tech City: Panama
Tech State/Province: Panama
Tech Postal Code:
Tech Country: PA
Tech Phone: +507.8365503
Tech Phone Ext:
Tech Fax: +51.17057182
Tech Fax Ext:
Tech Email: f7a93f5d87af478f876ff6f51b592cb0.protect@whoisguard.com
Name Server: ns1.foxdale.net
Name Server: ns2.foxdale.net
DNSSEC: unsigned
URL of the ICANN WHOIS Data Problem Reporting System: http://wdprs.internic.net/
>>> Last update of WHOIS database: 2019-04-27T03:17:32.93Z <<<

!highlight!For more information on Whois status codes, please visit https://icann.org/epp

2 ответа

Решение

Я выполнил эту команду как на своем компьютере с Ubuntu 18.04, так и на виртуальной машине CentOS 7 с таргетингом на google.com, и результаты не были идентичными, но у меня не возникло проблем с дублированием. Скорее всего, кажется, что экземпляр Ubuntu выполнял два запроса: сначала заглавными буквами, а затем строчными. Отметки времени также указывают, что это были два отдельных запроса. Я предлагаю добавить канал в ваш скрипт следующим образом:

whois foxdale.net | tail -n 60

Поскольку вывод CentOS составляет всего 60 строк, а первые 60 строк или около того кажутся идентичными, вы должны иметь возможность использовать это для того, чтобы отформатировать вывод во что-то пригодное для использования. Вы также сможете повторно использовать скрипт на своих компьютерах CentOS без изменений.

Я могу подтвердить это на моей машине Arch с помощью whois версия 5.4.2. Похоже, разработчики whois решили, что полезно запрашивать как прописные, так и строчные доменные имена. Я не понимаю, почему в спецификации реализации доменного имени (RFC 1035) говорится (выделено мое):

2.3.3. Случай персонажа

Для всех частей DNS, которые являются частью официального протокола, все сравнения между символьными строками (например, метки, доменные имена и т. Д.) Выполняются без учета регистра. В настоящее время это правило действует во всей системе доменов без исключения. Тем не менее, в будущих дополнениях, выходящих за рамки текущего использования, возможно, потребуется использовать возможности полного двоичного октета в именах, поэтому следует избегать попыток хранить доменные имена в 7-битном ASCII или использовать специальные байты для завершения меток и т. Д.

Когда данные поступают в доменную систему, их первоначальный регистр должен быть сохранен при любой возможности. В определенных обстоятельствах это не может быть сделано. Например, если два RR хранятся в базе данных, один в xy и один в XY, они фактически хранятся в одном и том же месте в базе данных, и, следовательно, будет сохранен только один регистр. Основное правило заключается в том, что регистр можно отбросить только тогда, когда данные используются для определения структуры в базе данных, и два имени идентичны при сравнении без учета регистра.

Учитывая вышеизложенное, решение whois разработчики кажутся очень странными, но я не специалист по сетевым технологиям, поэтому они, вероятно, знают то, чего не знаю я.

Предположительно, ваш CentOS имеет более старую версию whois который не имел такого поведения. CentOS не является передовым дистрибутивом и обычно отстает от других дистрибутивов, которые чаще поставляют новые версии инструментов. Так как я могу воспроизвести это в моей системе Arch, кажется, что это исходное решение, принятое whois разработчиков, а не проблема с Ubuntu.

Что бы это ни стоило, это, кажется, было добавлено в whois v5.2.17, по крайней мере, это была первая версия, которую я нашел в репозитории github https://github.com/rfc1036/whois которой отображалось это поведение.

Другие вопросы по тегам