Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
*Backtrace*(2003-07-09)
[go: Go Back, main page]

書いてる人: 高橋カヲル | [mixi] | [PGP] | [TETRiS DS] | [portscout] | [RSS]

トップ «前の日記(2003-07-08) 最新 次の日記(2003-07-10)» 編集

*Backtrace*

1999|12|
2000|01|02|03|04|05|06|07|08|09|10|11|12|
2001|01|02|03|04|05|06|07|08|09|10|11|12|
2002|01|02|03|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|

2003-07-09

_ dnscache forwarding to 127.0.0.1

dnscache を複数のアドレスで listen させるために IP に 0.0.0.0という裏ワザ的な手を使ったこともあった。が、もう使わないことにした。 192.168.0.1, 192.168.0.2 の両方を振っている場合など、 192.168.0.2 にきた問い合わせを src 192.168.0.1 で返して困ったことになる。 IPv6 patch を当てると 0.0.0.0 で listen する技自体が使えなくなる。

* 方針

複数上げるのを嫌がった理由はなんだったんだろうか。考えてみた。

  • メモリを食うくせに cache を共有できないのが嫌
  • root/servers の設定を共有できないのがイヤ (.flets の forward など)

いろいろ逃げ道は考えられるが、forward を使うことにした。まずは 127.0.0.1 で dnscache を上げる。気合いを入れて設定するのはコイツだけ。他のネットワーク向け、例えば 192.168.0.2 や 10.0.0.2 で上げる dnscache は問い合わせを 127.0.0.1 に forward してやる。例として

  • vlan0 には 192.168.0.2 で DNS cache サーバを提供
  • vlan1 には 10.0.0.2 で DNS cache サーバを提供

する場合を考えよう。

* dnsroots.global

dnscache-conf を走らせる前に dnsroots.global を変更しておく。 my ports に放り込んであるパッチ。

  • j.root-servers.net の変更に対応。
  • 日本にあって近いとわかっている m.root-servers.net に最初に問い合わせにいく
  • a.root-servers.net は集中砲火を浴びているので最後に持っていく。
$OpenBSD$
Now j.root-servers.net is 192.158.128.30. (SERIAL 2002110501)
Use m.root-servers.net first for Japenese user.
Move a.root-servers.net to last.
--- dnsroots.global.orig	Wed Jul  9 12:45:23 2003
+++ dnsroots.global	Wed Jul  9 12:45:49 2003
@@ -1,4 +1,4 @@
-198.41.0.4
+202.12.27.33
 128.9.0.107
 192.33.4.12
 128.8.10.90
@@ -7,7 +7,7 @@
 192.112.36.4
 128.63.2.53
 192.36.148.17
-198.41.0.10
+192.58.128.30
 193.0.14.129
 198.32.64.12
-202.12.27.33
+198.41.0.4

djbdns の root server の探し方を知っていれば、この変更の効果もわかる。すでに dnscache-conf をして dnscache を運用している場合は root/servers/@ を書き換えるといい。

* 設定

# dnscache-conf named multilog /var/dnscache 127.0.0.1
# dnscache-conf named multilog /var/dnscache-vlan0 192.168.0.2
# echo '127.0.0.1' > /var/dnscache-vlan0/servers/@
# echo '1' > /var/dnscache-vlan0/env/FORWARDONLY
# touch /var/dnscache-vlan0/root/ip/192.168.0
# echo '64' > /var/dnscache-vlan0/env/CACHESIZE

要は 127.0.0.1 で普通に dnscache を上げる。名前引き関係はこっちの dnscache で設定をする。キャッシュは大盛りで。 192.168.0.2 で FORWARDONLY な dnscache を上げる。アクセス制限関係はこっちの dnscache (dnscache-vlan0) で設定する。キャッシュを激しく小さめ (ここでは 64) にしておく。 vlan1 に関して同様。 CACHESIZE は 100 未満にしても強制的に 100 になるようだ。

_ X20 fxp driver

http://support.intel.co.jp/jp/support/network/adapter/pro100/linux_driver.htmから取ってきていれよう。

お名前:
E-mail:
コメント:

トップ «前の日記(2003-07-08) 最新 次の日記(2003-07-10)» 編集

謎 queue & status

Powered by 早起き生活
[Powered by OpenBSD] [Powered by たん清] [やる気のないサイト] Valid HTML 4.01 Strict Page Rank Checker [VALID RSS!] RSS feed meter for http://triaez.kaisei.org/~kaoru/diary/