RBB TODAYはブロードバンドへのエントリーから活用までをカバーした日本最大のブロードバンド情報サイトです。 PR PCならストーム■BTOとカスタムパソコン……2万円台〜超ハイエンドまで
RBBトップエンタープライズモバイルBizコンテンツ情報デジタル家電IT辞典スピード測定特集・連載プロバイダ比較

ブロードバンド

RBB検索

コラム −IIJ技術陣−


リソースの制限

 最近はメールの流量増加に伴い、サーバに求められる処理能力も大きくなっている。そのため、複数のMXレコードやAレコードを記述することで、クライアントから受け付ける接続を分散させ、各サーバに掛かる負荷の軽減を図っている場合もあるだろう。sendmailは標準では、ほかのサーバと情報を共有する術を持っていないため、複数台のサーバで処理を分散していたとしても各サーバは独立して動くことになる。今回は詳細を省くが、この問題に対する解決としてMilterなどを用いることにより、異なるサーバ間で起動しているsendmailプログラムの情報共有や、標準にない機能の拡張も可能になる。

 今回解説する対策は、すべてサーバごとに独立していることを前提にしている。それぞれのサーバを適切に設定せず、台数のみを増やしてもコストに見合う処理能力は得られないため、構成要素になるサーバごとの対策も実施すべきである。

  • nocanonify
    処理すべきメールアドレスのドメインパートがCNAMEである場合、sendmailはDNSサーバに問い合わせて得られた回答を元に正規化する。この設定は、その処理を抑止するものだ。本来、ドメインパートにCNAMEは用いるべきではないが、実際には、多くのケースで使用されている。インターネットへメールを送信するサーバでこの設定を用いるのは好ましくないが、メールを受信するサーバではDNSサーバへの問い合わせ抑制のため設定するのも良いだろう。

    たとえば、以下のようなDNSレコードが定義されているとする。
     foo.example.com IN CNAME bar.example.com
     bar.example.com IN A xx.yy.zz.xx
    この場合 user@foo.example.com のアドレスは以下のようになる。
     nocanonify有り user@foo.example.com (変化無し)
     nocanonify無し user@bar.example.com (CNAMEが展開される)

  • confBAD_RCPT_THROTTLE(BadRcptThrottle)
    発行されたRCPT TOコマンドに設定数以上のエラーとなった場合、応答を遅延させる。これは、ハーベスティングアタックなどユーザの存在確認を目的とした接続に対して、効率良い有効アドレスの収集を阻止するためである。

  • conncontrol
    これはバージョン8.13系より使用できる機能。access_dbを用いて1つのIPアドレスに対して、同時に接続可能な数を制限できる。この制限値を超過した場合、通常はMAIL FROMコマンドを受け取ったのちエラーを返すが、delay_checksと併せて用いることにより接続を受けた時点でエラーを返し、サーバ側からの強制切断も可能になる。

    以下に制限を超過したセッションの例を示す。なお、赤い文字で記載しているのはサーバから受け取る文字列で、青い文字はクライアントから受け取る文字列としている。

    conncontrol のみ場合
     220 mx.example.com ESMTP Sendmail
     HELO relay.example.org
     250 mx.example.com Hello relay.example.org[x.x.x.x]
     MAIL FROM: <user@example.org>
     421 4.3.2 Too many open connections.
    接続は維持される。

    delay_checks + conncontrol の場合
     421 4.3.2 Too many open connections.
    サーバから接続が切断される。
  • ratecontrol
    この機能もバージョン8.13系より使用できる。1つのIPアドレスに対して単位時間あたりの接続数を制限できる。単位時間は、confCONNECTION_RATE_WINDOW_SIZE(ConnectionRateWindowSize)で設定する。これ以外は、conncontrolとよく似ており、delay_checksと併せて用いることにより接続を受けた時点でエラーを返し、サーバからの強制切断もできる。

    この場合にクライアントが受け取るエラーは以下のようになる。
     421 4.3.2 Connection rate limit exceeded.

  • confCONNECTION_RATE_THROTTLE (ConnectionRateThrottle)
    これは1秒間に許可する接続回数。sendmailは接続を受けたあとforkを実行し、1クライアントに対して1プロセスを割り当てる実装になっている。そのため、バースト的な接続を受けると短時間で大量のforkが実行され、過負荷の状態になる。この制限はratecontrolやconncontrolとは異なり、sendmailプロセス全体で処理する接続受付数が対象だ。そのため細かな接続受付制限は、ratecontrolやconncontrolで実施し、バースト的な接続に対する備えとしてこの機能を用いると良いだろう。

  • confMAX_MESSAGE_SIZE (MaxMessageSize)
    受け付けるメール本文の大きさが制限できる。この拡張機能に関する記述はRFC 1870に定められている。クライアントからのEHLOコマンドに対する応答として受付可能なバイト数を宣言すると同時に、MAIL FROMコマンドにおけるSIZE変数の宣言を受け付けるようになる。クライアントがこの拡張機能に対応している場合は無駄にメール本文を送信しなくともエラーとして認識できる。運用ポリシーとして制限をかけられない場合は仕方ないが、初期値は制限がないため1Gバイトを越えるような巨大なメールも受け付けてしまうことに注意したい。




 <<< 前ページ(1/3) 現在ページ(2/3) 次ページ(3/3) >>> 


Special Link
> 高卒認定試験 > メンズ エステ ダンディハウス
> ミスパリ エステ > ICTソリューション

ページトップへ


電芸人ならぬ、家電ライターになれるかも!?という夢
新しい家電がほしい!そう洗濯機が!我が家の洗濯機は…
防御力96%×検知率99%、今選ぶべきセキュリティ対策は?
セキュリティ対策ソフトの性能を測る指標に「検知率」があり…
ADSLお得なサービスは?

メール配信登録はこちら


プロバイダ検索

プロバイダエリア別検索

郵便番号検索  - 

無線スポット検索dokoyo.jp
Weeklyアンケート

IT辞典

検索したい用語を入力して下さい



ご存知ですか? IVRとは?

MENU


ニュース

最新ニュース
アクセストップ5
前日のニュース一覧
バックナンバー
メール購読

スペシャル

スピードテスト
プロバイダ 比較
利用者の声
IT辞典
モバイルBiz
コンテンツ情報
インサイド
デジタル家電
インタビュー&企業訪問
コラム
レビュー
エンタープライズ
Weeklyアンケート

グループサイト


ユーザビリティ調査ならイード ユーザビリティ調査ならイード
RESPONSE 自動車最速ニュースサイト
車検  車査定  車買取  中古車
e-nenpi.com e燃費
無線スポット検索サイト dokoyo.jp 無線LANスポット情報
コンピュータ書籍専門ネット書店 cbook24.com コンピュータ書籍専門店
モノ・マガジン オフィシャル ウェブサイト モノ・マガジン公式サイト
ビジネスバッグ、探すならmonoONLINE
病院検索 MEDWEB 病院情報検索
任天堂&オンラインゲーム ニュースコミュニティ インサイド DS/Wii&オンラインゲーム情報
ガソリン価格ランキング スタンド情報 カ−ライフナビ ガソリン価格 クチコミ

リリースRSSビジネス向けサービスお問合せ会社概要プライバシーポリシーリンクについてCookiesについて

本サイトの内容は、著作権による保護を受けています。
Copyright (c) 1998-2010 IRI Commerce and Technology, Inc. All Rights Reserved.
IRI Commerce and Technology, Inc.