techzolab/toolsspfcheck

检查IP地址是否与域名SPF记录匹配

v1.0.2 2022-12-07 11:15 UTC

This package is auto-updated.

Last update: 2024-09-07 16:08:51 UTC


README

一个简单的库,用于检查IP地址是否与域名的 SPF 记录匹配

安装

此库通过Composer提供。运行 composer require techzolab/toolsspfcheck 或将其添加到您的 composer.json 中

{
  "require": {
    "techzolab/toolsspfcheck": "^1"
  }
}

用法

创建一个 ToolsSPFCheck 的新实例。构造函数需要一个 DNSRecordGetterInterface。目前您有两个选项

<?php
use Nzldev\ToolsSPFCheck\ToolsSPFCheck;
use Nzldev\ToolsSPFCheck\DNSRecordGetter;

require('vendor/autoload.php');

$checker = new ToolsSPFCheck(new DNSRecordGetter()); // Uses php's dns_get_record method for lookup.
var_dump($checker->isIPAllowed('127.0.0.1', 'test.com'));

// or

$checker = new ToolsSPFCheck(new DNSRecordGetterDirect("8.8.8.8")); // Uses phpdns, allowing you to set the nameserver you wish to use for the dns queries.
var_dump($checker->isIPAllowed('127.0.0.1', 'test.com'));

返回值是以下之一:ToolsSPFCheck::RESULT_PASSToolsSPFCheck::RESULT_FAILToolsSPFCheck::RESULT_SOFTFAILToolsSPFCheck::RESULT_NEUTRALToolsSPFCheck::RESULT_NONEToolsSPFCheck::RESULT_PERMERRORToolsSPFCheck::RESULT_TEMPERROR

缺少的功能

目前此库仍缺少一些功能。以下是这些功能的部分列表

您非常欢迎提交一个pull request来添加这些功能的任何部分。