FastNetMon

Показаны сообщения с ярлыком DNS. Показать все сообщения
Показаны сообщения с ярлыком DNS. Показать все сообщения

понедельник, 19 декабря 2011 г.

Получить номер ASN по IP адресу

Для этого есть замечательный быстрый сервис (впрочем, искомую информацию всегда можно найти руками): http://asn.cymru.com/

apt-get install -y ipv6calc

И тогда все можно сделать в одну строку:
host -t txt `ipv6calc 159.253.17.1   --in ipv4addr  --out revipv4 | sed 's/.in-addr.arpa.//'`.origin.asn.cymru.com | sed 's/"//' | awk '{print $4}'

вторник, 23 ноября 2010 г.

Как корректно настроить spf для Gmail?

Из рекомендации от Google, следует, что для обеспечения корректной работы Gmail при использовании spf записей следует добавить следующую директиву в spf запись:
include:_spf.google.com

Итого, полностью запись (для примера из http://phpsuxx.blogspot.com/2010/11/ispmanager-spf.html) будет иметь вот такой вид:

v=spf1 ip4:188.40.60.215 a mx include:_spf.google.com ~all

Замечания

Много где в сети рекомендуется прописывать aspmx.googlemail.com, но это не правильно, так как он ссылается на _spf.google.com, который рекомендован к использованию:
host -t txt aspmx.googlemail.com
aspmx.googlemail.com descriptive text "v=spf1 redirect=_spf.google.com"

Ресурсная же запись _spf.google.com содержит все сети, с которых может прийти почта от Google:
host -t txt _spf.google.com
_spf.google.com descriptive text "v=spf1 ip4:216.239.32.0/19 ip4:64.233.160.0/19 ip4:66.249.80.0/20 ip4:72.14.192.0/18 ip4:209.85.128.0/17 ip4:66.102.0.0/20 ip4:74.125.0.0/16 ip4:64.18.0.0/20 ip4:207.126.144.0/20 ip4:173.194.0.0/16 ?all"

ISPManager, spf и защита от СПАМа

При создании любой доменной зоны ISPManager создает также и spf запись:

nslookup -type=TXT mylivenotes.ru
Server: 192.168.155.1
Address: 192.168.155.1#53

Non-authoritative answer:
mylivenotes.ru text = "v=spf1 ip4:188.40.60.215 a mx ~all"

Authoritative answers can be found from:
mylivenotes.ru nameserver = ns4.fastvps.ru.
mylivenotes.ru nameserver = ns3.fastvps.ru.


Что же означает строка "v=spf1 ip4:188.40.60.215 a mx ~all", а означает она то, что отправка почтовых писем, у которых в адресе отправителя (поле FROM) указан домен mylivenotes.ru допустима c IP 188.40.60.215, всех серверов, указанных как MX, а также с IP, соответствующего A записи самого домена, то есть, в данном случае:
host -t A mylivenotes.ru
mylivenotes.ru has address 88.198.29.129

~all означает мягкий отказ, то есть, если письмо пришло с IP, которого не было в spf записи, то оно, скорее всего, будет отправлено в СПАМ, но отброшено не будет. Возможен вариант и жесткого отказа: -all, при этом письмо, отправленное с не авторизованного IP будет отброшено и уничтожено совсем.

Более подробно: рус вики и англ вики.

А также: https://support.exabytes.com/KB/a1957/email-error-550-spf-xxxx-is-not-allowed-to-send-mail.aspx

Офсайт spf: http://www.openspf.org/SPF_Record_Syntax

четверг, 5 августа 2010 г.

Если я добавлю два MX с одинаковыми приоритетами, то письмо упадет на оба сервера?

Нет, это не так. Никакой почтовый сервер никогда не будет заниматься тем, что дублировать исходящие письма. Отказоустойчивость работы почтовой системы обеспечивается иначе - прописывается два MX, один с большим приоритетом, другой с меньшим. Если основной (у которого цифра меньше) недоступен по тем или иным причинам, то почтовый сервер отправителя подключается на второй MX и отправит письмо на него. То есть, иными словами, письмо упадет на другой сервер. Таким образом, для "удобной" отказоустойчивость кроме двух внешних серверов (их часто называют релеями, 'relay'), нужно предусмотреть отказоустойчивую систему хранения и доступа к письмам.

Если же так сильно требуется отказоустойчивость, воспользуйтесь сервисами Google для домена, это намного проще.

суббота, 20 марта 2010 г.

Получение PTR для IP из Python на Debian 5 Lenny

Ставим:
apt-get install -y python-adns



#!/usr/bin/python

import DNS
import string

DNS.ParseResolvConf()


def get_ptr(ip):
a = string.split(ip, '.')
a.reverse()

name = string.join(a, '.') + '.in-addr.arpa'

x = DNS.DnsRequest(name,qtype='ptr')
x.req()

return x.response.answers[0]['data']

print get_ptr('67.195.37.179')



В результате получаем:

python dns.py
llf320063.crawl.yahoo.net

воскресенье, 20 декабря 2009 г.

Что значат поля DNS SOA записи?

Refresh говорит вторичным серверам, как часто они должны проверять значение serial.

Retry говорит о том, как часто вторичный сервер должен пытаться прочитать данные, если первичный сервер не отвечает.

Expire говорит вторичным серверам, в течение какого времени они должны обслуживать домен, если первичный сервер не отвечает. По истечении этого времени вторичные сервера будут считать свои данные устаревшими.

Minimum задает время жизни записей по умолчанию для данной зоны.

(с) потерял :(