トップ «前の日記(2005-04-13(Wed)) 最新 次の日記(2005-04-15(Fri))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2005-04-14(Thu) 外出すると花粉の嵐

んで、dummynet(4)ちょっと。

他のホストからpingを打っている最中に、↓のコマンド(の2行目) を実行した。すると...

# ipfw add pipe 1 ip from any to any
# ipfw pipe 1 config delay 200
;実行前
64 octets from DUMMY: icmp_seq=53 ttl=64 time=0.1 ms
64 octets from DUMMY: icmp_seq=54 ttl=64 time=0.1 ms
;実行後
64 octets from DUMMY: icmp_seq=55 ttl=64 time=391.7 ms
64 octets from DUMMY: icmp_seq=56 ttl=64 time=391.8 ms

plr(packet-loss-rate) 0.8 に設定して、同じようにping -c 100 してみたが、3発しか戻ってこなかった。
同じ設定で自分自身にpingさせると、100発が100発とも虚空に消えた。
他にconfigとして、bw(帯域), queue(バッファサイズ)とか。

ところで、linuxにもdummyってのがあるけど、どうもなんか別物みたい?

市立図書館で

うにまがのバックナンバーを見ているうちにdummynetの 記事が目に留ったので、要点をメモし、日本橋で中古のNICを 2枚(蟹とSIS900以外で10/100PCI、て感じでFNW-9702-T と i82557(!) で合計1000円) 買って帰宅。
FreeSBIEでfxp0とvr0と認識された。カーネルを再構築し、 ついでにnicをMYKERNELから外す。のはいいが、SIS900 はDHCPサーバにMACアドレスを登録してたっけ。 他のシステムも適当に...

# MYKERNELに追記
options IPFIREWALL
options HZ=100
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPFIREWALL
 
$cat /boot/loader.conf
if_fxp_load="YES"
if_vr_load="YES"
dummynet_load="YES"

~/.w3m/cookieに、

引越し前のFQDNが残っていた。はっきりいって気味悪い。w3mからアクセスする事は 滅多に無いが。ともかく消すに限る。

http://HOST.2ch.net/test/bbs.cgi      PON    HOSTXXXX.AAA.BBB.DOMAIN.TLD \
XXXXXXXX      SOME_HOST.2ch.net  / 

promiscuous mode

は、Web鯖も結構出してはいた。

#!/bin/sh
PRO="entered promiscuous"
for date in $(seq 10 1 13)
  do echo -n "Apr $date: " \
  && grep "Apr $date" hoge| \
  grep "$PRO" |wc -l
done
 
Apr 10:      21
Apr 11:      16
Apr 12:       0
Apr 13:      10

なんか セキュリティホールになる悪寒なのか?
追試はしてみたが‥結果から言えば、再現できなかった。

# ifconfig eth0 promisc
# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr SOME_MAC_ADD  
          inet addr:PRIVATE_IP  Bcast:PRIVATE_MUL  Mask:SOME_MASC
          UP BROADCAST RUNNING PROMISC MULTICAST  MTU:1500  Metric:1
          RX packets:1101118 errors:29 dropped:0 overruns:29 frame:0
          TX packets:802575 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1225384283 (1168.6 Mb)  TX bytes:145359035 (138.6 Mb)
          Interrupt:11 Base address:0xXXXX 
 
$/usr/local/sbin/tcpdump
tcpdump: socket: Operation not permitted
 
# ifconfig eth0 -promisc
# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr SOME_MAC_ADD  
          inet addr:PRIVATE_IP  Bcast:PRIVATE_MUL  Mask:SOME_MASC
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1101793 errors:29 dropped:0 overruns:29 frame:0
          TX packets:803223 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1225952518 (1169.1 Mb)  TX bytes:145452489 (138.7 Mb)
          Interrupt:11 Base address:0xXXXX 
 
# chmod 4755 /usr/local/sbin/tcpdump
 
$/usr/local/sbin/tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
(ry
 
# chmod 0755 /usr/local/sbin/tcpdump

Etherealでもpromiscuousモードで追試したが、キャプチャしようとすると、やっぱり失敗。

FreeBSD5.4-RC2でも同様だった。

本日のツッコミ(全2件) [ツッコミを入れる]
takanyon (2005-04-15(Fri) 11:55)

DUMMYNETをkldloadするならIPFWは勝手にkldloadしてくれるような。IPFIREWALL_DEFAULT_TO_ACCEPTにしたいからなのかな。

kuzu (2005-04-15(Fri) 13:48)

例によってどうもです。<br><br>今試してみましたが、 dummynet.koをkldloadしないと、ipfw add pipe は<br>できても、 config しようとすると Protocol not availableとエラーが出ます。<br>昨日設定した時点では、そこまでは試してなかったんですが。<br><br>デフォルトをacceptにするのは(↑との関連性は考えてなかったけど)、<br>問題ありとは思います(^^;


リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。