トップページunix
1001コメント377KB

FreeBSDでBBルータを作ろう互助会 3Gbps

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001名も無きfxp25NGNG
高い金出して最近のへぼなブロードバンドルータ買うより全然いいと思うぞ。
「PPPoEの方法」
「NATにする方法」
「NICを2枚使う方法」
「ファイヤーウォール設定・セキュリティ対策」
その他なんでもいいからここで質問&アドバイスして輪を広げてこう。
悪質ブロードバンドルーター製品逝ってよし!

最近のブロードバンドルータは安くて速いぞ。遅くてヘボいルーター作るなよ。

前スレ
 FreeBSDでBBルータを作ろう互助会
 http://pc.2ch.net/test/read.cgi/unix/1038060563/
FreeBSDでBBルータを作ろう互助会 2Mbps
http://pc5.2ch.net/test/read.cgi/unix/1060660932/

関連サイト
pf:http://www.openbsd.org/faq/pf/ja/index.html
08137922006/09/09(土) 12:28:35
>810
外部公開サーバ用の固定IP8と、動的IPで使い分け。

内から外への default route は固定IP8にしてありますが、
特定のネットワークへのアクセスだけ個別に route add して動的IPのほうに振り分け。

>811
おめ。
FreeBSDルータの内側からフレッツ・スクウェアのv6コンテンツにアクセスする設定がわかったら教えてくださいw
(IPv6まで設定してる暇がないので諦めました。ってか、うちの kernel は IPv6 外してある…)

>812
現状の P-t-P インタフェースはIPアドレスベースでルーティングするようになっていて、
ifconfig したとき、自動的にリモートIP宛のルーティング情報をルーティングテーブルに追加します。
そこで ng0 と ng1 で同じリモートIPが割り当てられてしまうと、
ルーティング情報が ng0 と ng1 で重複するので kernel としてはエラーにするしかないです。
(エラーにしないようにしたとしても、ng0 と ng1 のどっちに振り分けて良いのかわからなくなる)

P-t-P インタフェースの ifconfig で、リモートIPの指定を省略できるようにして
省略時はデバイスベースでルーティングするようになれば良いと思いますが…。
そういう意味では kernel がいまいちなのかなぁ。
0814名無しさん@お腹いっぱい。2006/09/09(土) 13:25:19
>>796にも書いてあるけど、ng*をupだけしてアドレスを付けず、ルーティングエントリをインタフェース指定でつっこめってことなんじゃないの?
0815名無しさん@お腹いっぱい。2006/09/09(土) 16:10:17
インターフェースにアドレス振らないでも動く
# ifconfig ng1 inet #the Internet
ng1: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1454
# ifconfig ng2 inet #フレッツスクエア
ng2: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> mtu 1454
# netstat -rn -f inet |grep ng
default ng1 US 0 455 ng1
220.210.194 ng2 US 0 1165 ng2
220.210.195 ng2 US 0 0 ng2
220.210.195.64 ng2 UHS 0 0 ng2
220.210.197 ng2 US 0 0 ng2
220.210.199 ng2 US 0 0 ng2
220.210.199.32 ng2 UHS 0 0 ng2
220.210.199.128 ng2 UHS 0 0 ng2
220.210.199.160 ng2 UHS 0 0 ng2
220.210.199.176 ng2 UHS 0 0 ng2

pfの変換ルールは
nat on ng1 inet from any to any -> <external_addr>
とかしておいてlinkupで
echo "$addr" |pfctl -t external_addr -Tr
注意点はルータ上ではソースアドレスが0.0.0.0になるので、変換ルールも
0.0.0.0を変換するようにしなければいけない。
0816名無しさん@お腹いっぱい。2006/09/13(水) 22:04:47
チラシの裏

6.1-STABLE使っていて、なんか重いプロセス走らせたりすると
たまに↓みたいなエラーが発生して、実際通信が止まる(ttyが詰まる)。
で、ぐぐってみたら他でも似たような現象が起きてるそうで、
/boot/loader.confにdebug.mpsafenet=0を書いて回避出来た。

Sep 11 09:26:21 hoge kernel: em0: watchdog timeout -- resetting
Sep 11 09:26:21 hoge kernel: em0: link state changed to DOWN
Sep 11 09:26:25 hoge kernel: em0: link state changed to UP
Sep 11 09:26:52 hoge kernel: em0: watchdog timeout -- resetting
Sep 11 09:26:52 hoge kernel: em0: link state changed to DOWN
Sep 11 09:26:55 hoge kernel: em0: link state changed to UP
0817名無しさん@お腹いっぱい。2006/09/14(木) 05:44:13
>>816
re(4)で同じようなことが起こっていたので、kernelオプションに、
options DEVICE_POLLING
options HZ=1000
を書いて、ifconfigにpollingをつけてる。
ちょっと前の、6.1-STABLE。

パフォーマンスはどうなのかわからんが、この現象は起こらなくなった。
0818名無しさん@お腹いっぱい。2006/09/14(木) 15:31:25
>>816
なんかこんなcommit logがsys/dev/em/if_em.cにあった。
まだRELENG_6には入ってなさそう。

revision 1.133
date: 2006/08/22 02:32:48; author: yongari; state: Exp; lines: +12 -0
It seems that em(4) misses Tx completion interrupts under certain
conditions. The cause of missing Tx completion interrupts comes from
Tx interrupt moderation mechanism(delayed interrupts) or chipset bug.
If Tx interrupt moderation mechanism is the cause of false watchdog
timeout error we should have to fix all device drivers that have Tx
interrupt moderation capability. We may need more investigation
for this issue. Anyway, the fix is the same for both cases.

This should fix occasional watchdog timeout errors seen on a few
systems.
0819名無しさん@お腹いっぱい。2006/09/14(木) 16:09:08
792氏のpatchのおかげで光プレミアムにおけるマルチセッションにも
対応できるようになったが、792氏がいうとおり,v6コンテンツは
どうすべかねぇ。

巷の市販ルータには「v6ブリッジ機能」なるものが実装されているらしいが、
これはBSDでいうところのなんだろう?
08207922006/09/14(木) 17:49:21
>819
全く役に立たない情報ですが…

偉い人から聞いた話だと、CTU は DHCPv6-PD を喋ってるらしいので、
WAN側インタフェースに v6 のアドレスを割り振りたいときは ports/net/dhcp6 を使うのかなと。

CTU側に繋がるWAN側インタフェースと、Windows端末側に繋がるLAN側インタフェースの間で、
IPv6 をパススルーできるブリッジを組めるかどうかは、やったことがないので全くわかりません。
(netgraph の bridge とかで組めないのかな?)

あと、プロバイダとフレッツ・スクウェアのマルチセッションを組む場合、
FreeBSD 上で両方の名前を解決できる named を動かすというのが一般的だと思いますが、
フレッツ・スクウェアの IPv6 アドレスも解決できるように設定しないといけないかと。
(どうすりゃいいんだ?)

以上が解決すれば、速度測定サイトが FreeBSD ルータの内部からも利用できるようになるかな…?

しかし最大の問題は、v6コンテンツの動画配信は MLDv2 (IPv6 のマルチキャスト) を使って配信されているらしく、
これを FreeBSD 上でリレーするかプロキシするかしないといけないようです。
(さっぱりわからん…)
0821名無しさん@お腹いっぱい。2006/09/14(木) 21:45:49
>820
v6うんぬんはともかくとして、速度測定サイトはv4オンリーでいけるよ。
うちではISP、Fletsスクウェア、速度測定サイトの3本のセッションを
同時に張ってる。
08227922006/09/20(水) 21:41:46
>821
あ、v4オンリーでいけるんですね。(てっきり、速度測定のサーバがv6ネットワークにあるものと)

FreeBSD 上で動かしている named の設定で、
*.fletsnet.com の DNS 順引きを CTU (192.168.24.1) に forward することで、
fletsnet.com ドメインの名前解決もできるようになって、
FreeBSDルータの内部から

ttp://www.speedtest.fletsnet.com/

で速度測定できるようになりました。
0823名無しさん@お腹いっぱい。2006/09/24(日) 13:50:02
mpd4は全然ダメだね。
libpdelがpthread使うのに、mpd本体はマルチスレッドを
全然考慮していないからまともに動くはずが無い。
0824名無しさん@お腹いっぱい。2006/09/24(日) 21:25:42
自分でhackできないんだったら素直にmpd3使えばええやん
0825名無しさん@お腹いっぱい。2006/09/24(日) 22:58:51
ここに書いとけば、無駄に格闘するのが1人くらいは減るだろ。
08267922006/10/10(火) 01:02:48
>819
その後、「ひかり電話」とv6コンテンツもOKになりました。
「ガンダムonフレッツ」の動画も見られるようになり、CTU設定もできるようになりました。
一筋縄ではいきませんでしたが。疲れた。

自分が >820 で書いたことはあまり正確ではなかったようです。スルーしてください。

>巷の市販ルータには「v6ブリッジ機能」なるものが実装されているらしいが、
>これはBSDでいうところのなんだろう?

FreeBSD の kernel で INET6 を有効にし(自分はこれまで無効にしてた)、
network interface のCTU側とLAN側を、if_bridge(4) でブリッジすることで、うまくいきました。

注意事項:
・CTU上で動作するDHCPサーバ機能はOFFにすべきではない。(特に「ひかり電話」利用時は必須)
・CTU配下のネットワークは 192.168.24.0/24 なので、ブリッジするFreeBSDの LAN側IPアドレスにも 192.168.24.x を割り当てる
・「ひかり電話」のVoIPアダプタには 192.168.24.2 が割り当てられ、
CTUのDHCPサーバ機能は192.168.24.51〜192.168.24.100を割り当てるので、
FreeBSDが自由に使ってもいいIPアドレスは、192.168.24.101以降か?
・FreeBSDのLAN側インタフェース上で DHCPサーバを動かす場合、CTUのDHCPサーバ機能と衝突するので(ブリッジしているから)
FreeBSDのパケットフィルタリング機能(私はpf(4)を使用)で CTU側とLAN側の間でお互いのDHCPパケットが流れ込まないようにフィルタリング。

あと、必要に応じて >822 の named の設定や、http proxy を動かしている場合は squid + www6to4 の設定なども必要かと。
0827名無しさん@お腹いっぱい。2006/10/12(木) 00:31:30
すみません。
mpdを使ってルータを構築しようとしているのですが、dnsサーバのアドレスを自動取得するためにはどのように設定すればいいのでしょうか?

OSはfreebsd6.1を使っています。
0828名無しさん@お腹いっぱい。2006/10/12(木) 00:39:15
送られてきていれば、upscriptに6,7番目で渡される。
08298272006/10/12(木) 22:30:10
やっぱりDNSキャッシュサーバをたててそのサーバのアドレスをDHCPで配布することにして、プロバイダのDNSサーバを使わないことにしました。
回答ありがとうございました。
0830名無しさん@お腹いっぱい。2006/10/13(金) 06:23:44
>>792

if_bridgeか。なるほど。
でも地域IP網のv6って外に出て行けないんだよね?

うちではfeel6使って家庭内LANをv6 readyにしてるんだけど、
これとNTTのv6コンテンツの両立は無理かな。
08317922006/10/13(金) 14:03:11
>830
外には出ていけません。

どうすれば両立できるんでしょうなぁ…。
せっかく INET6 を有効にしたことだし、OCNのIPv6オプション申し込んで試してみようかな。
0832名無しさん@お腹いっぱい。2006/10/18(水) 17:57:42
pfSense 1.0出てるね。
期待してたMulti SessionがPPPoEではできないくさいのがちょっとなあ。
0833名無しさん@お腹いっぱい。2006/10/20(金) 09:16:35
>>832
これって、FreeBSDにルータをさせる話じゃなくて、
FreeBSDをベースにしたルータ?
0834名無しさん@お腹いっぱい。2006/10/21(土) 13:10:49
>>833
ルータとして使うためにカスタマイズされたFreeBSD6系パッケージというか。
んでPCは専業ルータになる。
0835名無しさん@お腹いっぱい。2006/10/27(金) 18:24:47
pfSence 1.0 RELEASE は -p10になっているのね
ふむふむ
0836エスパー2006/10/27(金) 22:47:53
子路が死んじゃった。。
0837名無しさん@お腹いっぱい。2006/11/10(金) 19:40:48
保守
0838名無しさん@お腹いっぱい。2006/11/14(火) 13:02:51
どうせならあげれば?
mpdっていいね
0839名無しさん@お腹いっぱい。2006/11/18(土) 02:46:36
661 名前: 名無しさん@お腹いっぱい。 [sage] 投稿日: 2006/11/17(金) 10:42:31
>>659-660
書き方が拙くてすみません。という訳で補足。

Bフレなら2セッション使えて、mpdもマルチセッションに対応してる事から
BBExciteとso-netの両方と契約して

鯖 (FreeBSD 6.xR)

em0
└ ng0---->BBExcyte (210.x.x.x)
└ ng1---->so-net (224.x.x.x)

て感じで構築した上で、ipnatで上記の設定を行う事で、外から 210.x.x.x:443
に繋いだときはhttps、224.x.x.x:443に繋いだときはstone経由でssh、という
事が出来ないカナと思ったのです。まあ、場合によっては

鯖 (FreeBSD 6.xR)

└ em0 ─ ng0---->BBExcyte (210.x.x.x)
└ em1 ─ ng1---->so-net (224.x.x.x)

になるかも知れませんが、別に最初の構築案で問題ないかと思ってます。


あっちのスレにあった話題。
思ったんだが、これってルーティングはどうなンの?
入ってくる分にはいいとして、出て行く時にng1に投げるかng0に投げるか判断
つかない気がするんだけど?
0840名無しさん@お腹いっぱい。2006/11/18(土) 10:05:04
普通のルーティングだけではだめだね。
ipnatはあまり深く使ったことがないので知らないけど、
pfならreply-toでコントロールできる。

元のスレを読んだけど、入ってくる方、
単にインタフェースごとにbindするものを変えるだけの話じゃないの。
0841名無しさん@お腹いっぱい。2006/11/20(月) 00:12:55
>>840
>>単にインタフェースごとにbindするものを変えるだけの話じゃないの。

普通にやってそんなまね出来るの?
0842名無しさん@お腹いっぱい。2006/11/20(月) 11:24:17
>>841
とりあえず、bind時点でIPも指定しておけば、
複数IPで同じポートを別のfd割り付けは出来た。
なので、後はhttps鯖とstone鯖がbind時にIP指定
出来るか次第ぽ。

pfでのやり方は、てっきりrdrで別ポートで
動かした2つの鯖に飛ばすもんかと思ったよ。
reply-toとかいう物、お勉強しないと。
0843名無しさん@お腹いっぱい。2006/11/20(月) 23:53:02
>>842
>>839の最後の疑問点を解決していないから落第。
0844名無しさん@お腹いっぱい。2006/11/21(火) 08:58:06
単位1つ落しただけで落第なんて詐欺だ。

pf faqにも載ってるし

pass out on $ext_if1 route-to ($ext_if2 $ext_gw2) from $ext_if2 to any
pass out on $ext_if2 route-to ($ext_if1 $ext_gw1) from $ext_if1 to any

上の例で言えば、ng0のIPが送信元なパケットはng1通ろうとしてもng0(のGW)へ、
ng1のIPが送信元ならng0を通ろうとしてもng1(のGW)を通す。
0845名無しさん@お腹いっぱい。2006/12/24(日) 15:29:28
いまは普通のATX系筐体でつかってるんだけど
FreeBSDがうごく小型筐体御存知ないですか。

仔羊ルータ -> 販売終了
openblocks -> PPC
openmicroserver -> 高価(うごくかしらんけども)

以外でなにかありますか。
0846名無しさん@お腹いっぱい。2006/12/24(日) 15:33:40
>>845
ttp://www.pinon-pc.co.jp/
ここらへんは?
0847名無しさん@お腹いっぱい。2006/12/24(日) 17:11:05
>>845
http://www.pcengines.ch/wrap.htm
こういうのとか
0848名無しさん@お腹いっぱい。2006/12/24(日) 17:28:39
>>846
レス早っ!!Σ(゚д゚;)
情報ありがとうございます( ゜∀゜)ノ
ルータ用途だと 69800だな…
ヤフオクで監視してみます!
08498452006/12/24(日) 17:29:26
ごめん。sageまちがえちゃった…
08508452006/12/24(日) 17:43:19
>>847
リンク先、活字ばっかであせりました><
ttps://www.ytw.co.jp/catalog/
ここでの写真でなんとなくわかりました。
てのひらPCのフレームワークみたいなもんですか…
面白そうだけどめんどくさそうだなぁ…
でも保守には困らなそうだな…
0851名無しさん@お腹いっぱい。2006/12/24(日) 17:50:18
>>850
それnanobsd(7-current)で使ってるがCPUパワーが足りない。15Mbpsで頭打ち。
0852名無しさん@お腹いっぱい。2006/12/24(日) 17:53:33
>>851
そうだね
でもその程度で済む用途もあるから
そういうのに使えば良いんじゃないのかな。
0853名無しさん@お腹いっぱい。2006/12/24(日) 18:44:19
pfsenseのドキュメントにも書いてあるけど低速CPUでは6(おそらく5も)以降は2-3割落ちる。
0854名無しさん@お腹いっぱい。2006/12/24(日) 18:59:41
>>845
Mac mini
NAS
PS3
0855名無しさん@お腹いっぱい。2006/12/24(日) 19:00:37
すまんPS3にFreeBSDは無理だった
0856名無しさん@お腹いっぱい。2006/12/24(日) 19:17:51
Darwinならいける?
0857名無しさん@お腹いっぱい。2006/12/25(月) 01:04:45
光(ニューハミ、ハイハミ)の速度を十分に生かせるだけのスループットを出すには、どの位の
CPUスペックが必要でしょうか?

GeodeGX1@300MHz、メモリ64MBのマイクロサーバにR6.1を突っ込んでルータにした所
下り4MB/s、上り6MB/sっていう、ADSL?みたいな速度しか出ませんでしたw

#もっとも、proxomitoron→stone→bbexciteと、間にいろんな物が挟まってますが。


PenM/CelMノートが最適解ですかね?
0858名無しさん@お腹いっぱい。2006/12/25(月) 01:12:52
proxomitoronやstoneの事情はしらない
pentiumII350+mpd(+ipf or pf )ぐらいだとまあまあそれなり(50Mbps以上)のスピードがでた

でも6MB/sとか4MB/sとかなら結構出てんじゃね?
それとも4Mbit/secと6Mbit/secの意味で書いた?
0859名無しさん@お腹いっぱい。2006/12/25(月) 01:24:00
NICも重要だけどね、CPUパワーは旧CyrixとかVIA系とかは微妙かと。
Pentium3あたりの1G付近のがいいかも、メモリは256Mもあれば。
0860名無しさん@お腹いっぱい。2006/12/25(月) 01:27:59
>>858
ゴメ。単位間違えた。
上り6Mbps、下り4Mbpsね。上りの方が速いてどういうことよ ('A`)
あと、proxomitoron、stoneを外しても特に変わらなかった。

GeodeGX1@300MHz、64MB、RTL8139C x2
FreeBSD R6.1 + mpd 3.18 + ipfilter
0861名無しさん@お腹いっぱい。2006/12/25(月) 01:34:17
> RTL8139C x2
これ論外。特に非力なCPUでは。
0862名無しさん@お腹いっぱい。2006/12/25(月) 01:56:16
>>860
>>853
みたいなアレもあるからm0n0wallの1.22とかためしてみれば?
0863名無しさん@お腹いっぱい。2006/12/25(月) 10:16:27
>>862
m0n0wallとかfloppy-1のCF版はよさげですね。少しずつ試したいと思います。

ただ、sshdとかddclientとかvrrpdとかどうしても必要なんで、初期状態で
入ってないpkgを独自に入れたいとなると途端に手間がかかるんですよね、こ
の手の完成したパッケージって。

単純に、4.11Rベースでインスコし直すだけでもパフォーマンス少しは上がりそう。
まずはこっちかな。
0864名無しさん@お腹いっぱい。2006/12/25(月) 10:31:39
とりあえずLAN(NIC)カード差し替えてからいじってみたら?
ひいき目にみてもNIC,CPUの順番に足引っ張ってるように思うし。
0865名無しさん@お腹いっぱい。2006/12/25(月) 10:40:57
>>864
かなり特殊なマシンなんで、外部ストレージ以外の全てのデバイスがオンボード
で交換不可という罠。(EPIA等、小型マシンには良くある話ですが)

ただ、CardBus対応のPCカードスロットがあるんで、ちょっとこっちを試してみ
たいかも(ただしこれも本来は無線LAN内蔵用なんで、筐体外からの挿抜不可。
NICだとケーブルの引き回しに難あり)
0866名無しさん@お腹いっぱい。2006/12/25(月) 12:12:37
昔EPIA-Mの1G使ってたことがあるんだけど、どうひいき目に見ても500MのP2にも劣ってたんだよね。
オンボードはVIAの腐ったような周辺ばっかで、(自分の心を)騙して使ってた感じだった。
(Winで録画とファイルサーバーやらせてただけだけど)

CardBusのカードって結構CPUとかのバス占有しちゃう(チップセットとかにもよるけど)から
どうなんだろう。
個人的にはVAIO(確かP3-700のヤツ)で使ってた時も、パフォーマンス稼げなくて苦しんだ思い出しかないし。
(USBのLANアダプタの方がよっぽどましだった)

あ。USBのLANアダプタっていう逃げもあるけど、VIAとかCyrix系だとどうなんだろ?
つーか、FreeBSDでUSB-LAN使ったことないけど。
(玄箱でルータ化しようとして2個買ったのに、使ってないことを思い出したw、って
linuxのディストリによって認識しなくて諦めてた気がしたが)
0867名無しさん@お腹いっぱい。2006/12/25(月) 14:52:39
>どうひいき目に見ても500MのP2にも劣ってたんだよね。

P2は450MHzまでしか無いが?
0868名無しさん@お腹いっぱい。2006/12/25(月) 15:33:30
ミスタイプだってば
0869名無しさん@お腹いっぱい。2006/12/25(月) 15:46:27
雲谷さ良い岩家
0870名無しさん@お腹いっぱい。2006/12/25(月) 15:54:08
>>868
何のミスタイプよ。
0871名無しさん@お腹いっぱい。2006/12/25(月) 15:58:46
パフォーマンス、消費電力等を総合的に考えれば、もっとPenM/CelMなプラット
フォームに選択肢があればなぁ、と思う。
0872名無しさん@お腹いっぱい。2006/12/26(火) 06:00:10
Xeon 3G の Windows 2003 Server に VMware + FreeBSD 入れて bridge にして使ってる
0873名無しさん@お腹いっぱい。2006/12/26(火) 06:02:39
↑ NIC4枚で2枚を2003SV側のこり2枚をFreeBSDに割り当ててます
0874名無しさん@お腹いっぱい。2006/12/29(金) 08:38:58
>>866
USBのNICのドライバって、mbufの領域を直接DMAせずに、メモリコピーしてるやつが
ほとんどだった憶えがある。
これだと遅いCPU、メモリのマシンはきついはず。

ただ、USB2.0でつながるUSB NICってあるんだっけ?
0875名無しさん@お腹いっぱい。2006/12/29(金) 09:52:02
ある、現行商品じゃどうなってるか不明だが。
持ってるのはバッファローのとコレガだったかな。

DMAじゃないのか、厳しいなw
ハードの内部的にはUSB-PCIブリッジを抱えてるんだが、OSから見てそれは関係ないか。
0876名無しさん@お腹いっぱい。2006/12/29(金) 12:08:46
>>875
PIOで叩き込んでるわけじゃなくて、DMAはやってる。
ただ、mbufのデータ領域を直接DMAするんじゃなく、mbufのデータ領域から
USBフレームワーク(?)のDMA領域にコピーしてからDMAしてる。

ミスタービルがif_rl.cとかで、うんこー って叫んでる程度には
うんこな実装をしてるってわけ。
ただ、ああいう実装になっちゃってるのが、USBフレームワークのせいなのか、
それとも?hciのハードウェアの制限なのか、おいらにはわかんね。
0877名無しさん@お腹いっぱい。2006/12/29(金) 13:06:17
DMAを直にやれないってことから想像すると、xHCIのドライバー方面で握ってる可能性大ですな。
つたない記憶をたどるとコントローラ側からのアドレス指定はできない筈だから、そういうコーディングは正しい気がしてきた。

まぁ仕方なかろうかと、とはいえ今はそのUSB-LANは(boot)DHCPじゃないと最初設定出来ないネットワーク機器とかの立ち上げには重宝しているw
08788572006/12/29(金) 16:32:09
GeodeGX1@300、64MB、蟹のRTL8139Cx2

この環境に6.1Rを突っ込んでルータ化したらスループットが4Mbpsしか出なかっ
た件の続きについて。

とりあえず、4系のほうがいいんでね?という意見を見て4.11Rでルータ化した
所、スループットは3.5〜4Mbpsのまま orz

GeodeGX1(と言うが、実際はMediaGX)と蟹の組み合わせではこれが限界?と諦め
つつ、floppy-1のCF版をmpd+ipfilter+ipnatの組み合わせで調整。(m0n0wallは
なんか上手くいかなかった)

結果、スループットは20Mbps前後に改善ヽ(´ー`)ノ
ここまで劇的に違う原因がなんなのか知りたい。そりゃ、floppy-1はmd0で動い
てたりswap無かったりいろんなデーモンが居なかったりするけど、それだけで
ここまで違うものかどうか、、、kernconfの差なんだろうか、、、
0879名無しさん@お腹いっぱい。2006/12/31(日) 21:32:58
>>878
前者の時にはPPPoEは何でやってた?
ユーザランドPPPでやってたならそれくらいの差が出るのは有名な話だが。
0880名無しさん@お腹いっぱい。2007/01/01(月) 15:32:17
>>879
レス追えば書いてあるだろ。メクラ?
0881名無しさん@お腹いっぱい。2007/01/01(月) 22:31:32
>>879

>860
>GeodeGX1@300MHz、64MB、RTL8139C x2
>FreeBSD R6.1 + mpd 3.18 + ipfilter

んで、下り4Mbpsはちと極端な気がするけど、4系と6系でスループットが全然
違うのはどうも事実っぽい。(スペック低いマシン限定かも)

4.11で20Mbps出てた状態で、6.1で構築しなおした環境だと10Mbps程度しか出
なくなった。3割どころか5割近く落ち込んでる(;´Д`)
チューニングでどうにかならないのかね?今更開発が終了した4系を使いたく
ないし、4系はUSB周りがこなれてないし、、、
0882名無しさん@お腹いっぱい。2007/01/02(火) 00:17:24
たとえば手元では
mmxPen 166MHz , 96MB , fxp0 x2
FreeBSD 6.0 + mpd3.18 + pf(or ipfilter)
とか
geode sc1100 266MHz, 64MB , sis0 x2(WRAP
pfsense or m0n0wall

とかでも いずれの組み合わせでも15Mbpsは超えるから
結局NIC問題なのかな〜

手元にカニのNICは1枚しかないから実験するとしても明日以降だな。
0883名無しさん@お腹いっぱい。2007/01/02(火) 07:49:05
と思ったが、手元のカニNICがPen.MMXマシンでうまくうごかん。
0884名無しさん@お腹いっぱい。2007/01/02(火) 10:51:29
お、vrが1枚あった。
こいつをPentiumMMX166MHzマシンにつけて
PentiumMMX166MHz , 96MB, xl0 vr0
FreeBSD 6.1 + mpd 3.18 + pf
てな構成にして、 mpd側がvr0 だと 11Mbpsを超えなくなる。
mpd 側を xl0にすると 15Mbps程度は出るようになる。
NICを両方とも xlにすると 17-20Mbpsは出るようになるので
NIC問題かね、やっぱり。

別のマシンでCardBusのNIC (IBM 10/100 EtherJET)をさしていたときは
それほどパフォーマンスが悪いわけじゃなかったから、
もしさせるならさしてみれば?
0885名無しさん@お腹いっぱい。2007/01/02(火) 10:59:17
あとはGeodeGX問題か
0886名無しさん@お腹いっぱい。2007/01/02(火) 13:57:53
発熱はすごいがi82557とか82558チップなIntelのNICを使うといいかも。
CPUのあんまり食わないみたいだし。

値段もオークションとかで1000円前後で買えるからいいと思う。
0887名無しさん@お腹いっぱい。2007/01/02(火) 14:10:48
秋葉原に行ければ100円台のNICだしね>>886

でも>>881なひとはPCIスロットは使えないらしいぜ?
0888名無しさん@お腹いっぱい。2007/01/02(火) 17:56:55
ってかんがえると
>>846の会社のマシンはカニばっかで困っちゃう。
0889名無しさん@お腹いっぱい。2007/01/02(火) 20:18:30
PenMMX 166MHz , 96MB ,fxp x2
FreeBSD6.1 + mpd3.18 +pf
なマシンだと20Mbpsぐらいはコンスタントにでるなあ。
ふーん
0890名無しさん@お腹いっぱい。2007/01/02(火) 22:13:33
>>888
あのな、難しいこと先に言っちゃうとな、
別にそこの会社に限らず、組み込み向けとか超低電圧CPU実装済みみたいな
ボードだとなぜか蟹が使われる事が、多いんだよね。こことか

つ ttp://www.hightech.co.jp/

ダメだよ。なんで82559とか82550使ってくれないんだよ。(Gigaになると
結構8254xが使われてるけど)
0891名無しさん@お腹いっぱい。2007/01/02(火) 23:33:45
カニが選好されがちなのは、
そりゃ比較的省電力で低価格だからでしょ。

WRAPやSoekrisはNSのsisなんだけどねえ。
0892名無しさん@お腹いっぱい。2007/01/03(水) 01:08:35
そのSoekrisから、ようやくnet5501がでるっぽい。
http://www.soekris.com/net5501.htm

Realtekにするかもといってたけど、VIAに落ち着いたか。
0893名無しさん@お腹いっぱい。2007/01/03(水) 01:40:46
VT6105Mはどうなんだろう?


>Full production release is planned for March 2007.
ふーん

SATA,USB2.0,x4 RJ45 と盛りだくさんだな
0894名無しさん@お腹いっぱい。2007/01/03(水) 02:11:11
>>884
検証サンクス。
正月に秋葉まで行って蟹肉を買ってきたけど先を越されてしまった orz
と言うわけで

× 6系だとスループットが著しく低下する
○ rl/vrについては、6系だとスループットが著しく低下する

て事で。ドライバに大きく手が入ったとは考えにくいから、OS側の変更が
影響してるんだろうなぁ。なんとか出来んかなぁ。コッソリNetBSDに浮(ry
0895名無しさん@お腹いっぱい。2007/01/03(水) 08:11:43
6.x系だと、割り込みハンドラに来るまでにスケジューラが噛むようになったってのが
痛いのかねえ。
回避策としてDEVICE_POLLINGでなんとかしようか、ってことなんだろうけど、
なんかいまいち。
0896名無しさん@お腹いっぱい。2007/01/03(水) 08:50:47
とりあえず rl/vr はあかんでしょう。
でも 4.11 は未だにサーバー関連で使っている所が多いと思う。
0897名無しさん@お腹いっぱい。2007/01/03(水) 09:20:28
やったーRTL8139Cが載ってるNICが認識したぜ!
PentiumMMX166MHz , 96MB, fxp0 rl0
FreeBSD 6.1 + mpd 3.18 + pf
だとmpd側が rl0でも 17Mps程度は出るなあ。

この構成で fxp0の代わりにVT86C100Aなvr0にすると(mpd側はrl0)、14Mbps程度になるなあ
さらにmpd側をvr0にすると最悪の組み合わせになり、5Mbps前後しかでなくなるな。
へー
0898名無しさん@お腹いっぱい。2007/01/04(木) 01:54:38
ルータ構築の際に、いかにNIC選びが重要かってことで。
て、普通はfxpかemかbgeしか買わないと思うけど。
0899名無しさん@お腹いっぱい。2007/01/04(木) 02:03:51
ま、今回は非力なCPUとカニオンボードでどうしようとお話だなら
0900名無しさん@お腹いっぱい。2007/01/04(木) 07:51:11
そういやRTL8193Cが載ってるカードがもう一枚あった・・・
PentiumMMX166MHz , 96MB, RTL8139C x2
FreeBSD 6.1 + mpd 3.18 + pf
だと 15Mbps程度はでる。
不安定でもない。

そんなに破壊的にダメってわけでもなさそうだな。
すくなくともVT86C100Aよりは。
0901名無しさん@お腹いっぱい。2007/01/05(金) 00:57:59
>>893
えええ vr かよ!
sis ではなくなったのは実装面積のせいか?
GbEの速度は出ずとも vge にしてほしかった・・・
0902名無しさん@お腹いっぱい。2007/01/05(金) 02:13:20
お、VT6105Mを誌っているっぽい人がいた
VT6105M使ったことある?
それともvrだからダメ?
0903名無しさん@お腹いっぱい。2007/01/05(金) 03:10:59
チップの出来どうこうは兎も角、ドライバが(ry
0904名無しさん@お腹いっぱい。2007/01/05(金) 12:05:38
vrドライバをほんの少し賢くするのと、TCPの送信ルーチンをおバカなNICに
合わせて少しだけ工夫するパッチ。

ttp://www.uploda.org/uporg642934.zip.html

TCPの方は、PPPoEで使う場合kern.ipc.max_linkhdr=24を/etc/sysctl.confに
追加する必要あり。ルータとしてのみ使う場合にはあんまり必要ない。

ただ、うちのVIA C3 1GHz + vrでは効果はみられなかったwww
0905名無しさん@お腹いっぱい。2007/01/06(土) 06:20:26
6.1R + mpd + ipfilter + ipnat の組み合わせについて誰か助けてhelp。
システムリセットして立ち上がってきた後、クライアント(winとか)から
natして外へ出られません。

一度、サーバに入って
ipf -Fa -Z ; ipf -f /etc/ipf.rules ; ipnat -F -C -f /etc/ipnat.rules
を実行してやればちゃんと外と繋がるようになります。
ただ、これを実行する前から
ipfstat -io
ipnat -l
で確認する限りは、firewall/natの設定自体はちゃんと行われています。
/etc/start_if.* の中でipfilter resyncやreload等を試行錯誤してみました
が状況は変わりません。

mpdでpppoe接続して、ipfilter&ipnatを使う場合、ipfilterとipnatの設定は
どのファイルに記述してどのタイミングで行うのが良いのでしょうか?
0906名無しさん@お腹いっぱい。2007/01/06(土) 06:38:08
>>905
その手で打つ内容のファイル
--mpd.up--
#!/bin/sh
ipf -Fa -Z
ipf -f /etc/ipf.rules
ipnat -F -C -f /etc/ipnat.rules
--mpd.up--
を作って
mpd.conf内に

set iface up-script /usr/local/etc/mpd/mpd.up

てな具合で追加すればok
0907名無しさん@お腹いっぱい。2007/01/06(土) 06:44:47
気になったので、4.11-RELEASE で試してみた
PentiumMMX166MHz , 96MB, RTL8139C x2
FreeBSD 4.11R + mpd 3.18 + ipf
これだと35Mbit/sec ぐらいでた。すごいじゃん!

さらに気になったので、これをfxp(82558) x2 にしてみた
50Mbit/secぐらいでた。すげー。
4.11Rってかなりいいんじゃない?

てか、GeodeGX1の300Mって足回りがアレなのか、
なにかがまずいのかな?
手元にあるGeode系のって FIVA101しかないんだよなあ

>>878>>857
0908名無しさん@お腹いっぱい。2007/01/06(土) 07:12:56
てなわけでやっぱスペック低いマシンにおいては、
4系と6系の間には結構な違いがあるんだなあ。
0909名無しさん@お腹いっぱい。2007/01/06(土) 23:16:32
>905
>/etc/start_if.* の中でipfilter resyncやreload等を試行錯誤してみました
>が状況は変わりません。

ipfilterじゃなくてipnatの問題じゃね?ipnat restartとか試した?
0910名無しさん@お腹いっぱい。2007/01/08(月) 04:40:53
vr と rl の間には大きな差があるとおもうけどね。
もちろん rl のほうがいいとおもうよ。
0911名無しさん@お腹いっぱい。2007/01/08(月) 18:07:31
現在mpd+pfでブロードバンドルータの機能をもたせたFreeBSD6.1を入れたPCで
linuxigdをインストールしてUPnPが動くようになったのですが、NATは動作するものの、パケットフィルタが動的にかわってないようにおもいます。
ソースをみるとフィルタを動的に追加削除する部分がコメントになってるようなのですが、ここに追加すればうまくポートを開けるようになるのでしょうか?
ちなみに>>69のパッチはあててます。
もしかしてポートも開けれるようなパッチがすでに存在してるのでしょうか?
0912名無しさん@お腹いっぱい。2007/01/10(水) 18:51:22
最新のFreeBSDでルータ作って、64バイトパケットでどれくらいppsでますか?
ググったら200Kppsとか書いてあったんですが、どうなんでしょうか。
0913名無しさん@お腹いっぱい。2007/01/13(土) 00:34:34
10年前のボロノートPC(CPU:100MHz)で動かしてるのでスループットが
よくて3Mb/sくらいしかでません。

なるべく小型で安いPC(もちろんディスプレイは不要でNICが2つあれば)を
ゲットして置き換えたいのですがオススメのPC機種ないですか。


レス数が900を超えています。1000を超えると表示できなくなるよ。