「accf dns」の版間の差分
提供: FreeBSD入門
(ページの作成:「accf_dns(Accept Filter DNS) とは、Accept FilterのDNSの実装です。最初のリクエストが現れるまで、インカミングDNSリクエス...」) |
|||
行1: | 行1: | ||
− | [[accf_dns]](Accept Filter DNS) とは、[[Accept Filter]] | + | [[accf_dns]](Accept Filter DNS) とは、[[Accept Filter]]のDNSの実装です。最初のリクエストが現れるまで、インカミングDNSリクエストをバッファリングします。 |
'''読み方''' | '''読み方''' | ||
行8: | 行8: | ||
== 概要 == | == 概要 == | ||
− | + | accf_dataは、インカミングコネクションを受けるときに accept()システムコールを使ったソケットで使うフィルターです。 | |
− | DNSリクエストが到達したら、accept()は、接続済ディスクリプタ(descriptor) | + | DNSリクエストが到達したら、accept()は、接続済ディスクリプタ(descriptor)をアプリケーションに返します。accf_data が動作は、リクエストの最初の2バイトを読み、リクエストのサイズを決定し、要求されるデータを読み込むまで待ちます。 |
− | + | ||
− | + | ||
+ | ACCEPT_FILTER_DNS カーネルオプションを有効にするか、 kldloadで実行時にモジュールで有効にします。 | ||
== インストール == | == インストール == | ||
カーネル[[コンフィグレーションファイル]]で設定する場合です。 | カーネル[[コンフィグレーションファイル]]で設定する場合です。 | ||
行30: | 行29: | ||
accf_dns_load="YES" | accf_dns_load="YES" | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
== 使い方 == | == 使い方 == | ||
[[カーネル]]で [[accf_dns]]ジュールが有効な場合に、以下のコードは、socket sokで DNS Accept Filterを有効にする例です。 | [[カーネル]]で [[accf_dns]]ジュールが有効な場合に、以下のコードは、socket sokで DNS Accept Filterを有効にする例です。 |
2015年9月27日 (日) 18:39時点における最新版
accf_dns(Accept Filter DNS) とは、Accept FilterのDNSの実装です。最初のリクエストが現れるまで、インカミングDNSリクエストをバッファリングします。
読み方
- accf_dns
- えーしーしーえふ でぃーえぬえす
- Accept Filter DNS
- あくせぷとふぃるたー でぃーえぬえす
概要
accf_dataは、インカミングコネクションを受けるときに accept()システムコールを使ったソケットで使うフィルターです。
DNSリクエストが到達したら、accept()は、接続済ディスクリプタ(descriptor)をアプリケーションに返します。accf_data が動作は、リクエストの最初の2バイトを読み、リクエストのサイズを決定し、要求されるデータを読み込むまで待ちます。
ACCEPT_FILTER_DNS カーネルオプションを有効にするか、 kldloadで実行時にモジュールで有効にします。
インストール
カーネルコンフィグレーションファイルで設定する場合です。
options INET options ACCEPT_FILTER_DNS
カーネルモジュールをロードする場合です。
kldload accf_dns
設定
/boot/loader.confでロードする場合です。
accf_dns_load="YES"
使い方
カーネルで accf_dnsジュールが有効な場合に、以下のコードは、socket sokで DNS Accept Filterを有効にする例です。
struct accept_filter_arg afa; bzero(&afa, sizeof(afa)); strcpy(afa.af_name, "dnsready"); setsockopt(sok, SOL_SOCKET, SO_ACCEPTFILTER, &afa, sizeof(afa));
関連項目
- Accept Filter
- accf_data
- accf_dns
- accf_http