Compare commits

..

No commits in common. "fd68be89918aacb159562837eec9bffe651095a6" and "58212611bac6d342456853b7e044e9e947a2eecd" have entirely different histories.

2 changed files with 4 additions and 20 deletions

View File

@ -5,7 +5,7 @@ A Python script to resolve email-related DNS records for a domain.
Example: Example:
``` ```
$ python email_dns.py contoso.com $ python email_dns.py cbarts.net
{ {
"cbarts.net": { "cbarts.net": {
"mx": [ "mx": [

View File

@ -22,15 +22,6 @@ dkim_selectors = { # <selector>._domainkey.<domain>
'protonmail': [ 'protonmail': [
'protonmail', 'protonmail1', 'protonmail2' 'protonmail', 'protonmail1', 'protonmail2'
], ],
'autotask': [
'autotask'
],
'connectwise psa': [
's318306'
],
'zendesk': [
'zendesk1', 'zendesk2'
],
'sendgrid': [ 'sendgrid': [
'sg', 's1', 'sg2', 's2', 's3' 'sg', 's1', 'sg2', 's2', 's3'
], ],
@ -45,13 +36,8 @@ dkim_selectors = { # <selector>._domainkey.<domain>
'mandrill': [ 'mandrill': [
'mandrill' 'mandrill'
], ],
# Mailgun (Very generic, thank you, Mailgun)
'mailgun': [ 'mailgun': [
'pic', 'smtp', 'pic', 'smtp', # Mailgun (Very generic, thank you, Mailgun)
],
# Bloomerang (using SendGrid backend)
'bloomerang': [
'blm', 'blm2',
], ],
'bullhorn': [ 'bullhorn': [
'bh' 'bh'
@ -73,7 +59,7 @@ def process_args(args: list) -> list:
return domains return domains
def safe_resolve(name: str, type: str) -> resolver.Answer | None: def safe_resolve(name: str, type: str) -> resolver.Answer:
try: try:
answer = resolver.resolve(name, type) answer = resolver.resolve(name, type)
return answer return answer
@ -84,9 +70,7 @@ def safe_resolve(name: str, type: str) -> resolver.Answer | None:
return None return None
class Domain: class Domain:
# def __init__(self, name: str, mx: str = [], spf: str = None, dkim: list = [], dmarc: str = None) -> None: # def __init__(self, name: str, mx: str = [], spf: str = None, dkim: list = [], dmarc: str = None) -> None:
def __init__(self, name: str) -> None: def __init__(self, name: str) -> None:
self.name = name self.name = name
self.mx = [] self.mx = []
@ -111,7 +95,7 @@ class Domain:
for a in answer: for a in answer:
if str(a).lower().find('v=spf1') != -1: if str(a).lower().find('v=spf1') != -1:
self.spf = str(a).replace('"', '') self.spf = str(a).replace('"', '')
# TODO: Recurse through includes? # TODO: Recurse through includes
# matches = re.search(r'(?:include:)(.*)(?=\s)', str(a).lower()) # matches = re.search(r'(?:include:)(.*)(?=\s)', str(a).lower())
# domains = set() # domains = set()
# if matches: # if matches: