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

FreeBSDでBBルータを作ろう互助会 2Mbps

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。NGNG
高い金出して最近のへぼなブロードバンドルータ買うより全然いいと思うぞ。
「PPPoEの方法」
「NATにする方法」
「NICを2枚使う方法」
「ファイヤーウォール設定・セキュリティ対策」
その他なんでもいいからここで質問&アドバイスして輪を広げてこう。
悪質ブロードバンドルーター製品逝ってよし!

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

最近のブロードバンドルータは安くて速いぞ。遅くてヘボいルーター作るなよ。
0002乙彼NGNG
      ∧ ∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     ( ゚Д゚) < ムーンウォークで2ゲトー!!
     ./ つ つ  \_____________
  〜(_⌒ヽ      (´⌒(´
     .)ノ `J≡≡≡(´⌒;;;≡≡≡
         (´⌒(´⌒;;
    ズザーーーーーッ
0003名無しさん@お腹いっぱい。NGNG
upnp実装お願いしまつ。
0004あぼーんNGNG
あぼーん
0005名無しさん@お腹いっぱい。NGNG
0006名無しさん@お腹いっぱい。NGNG
>>3
cd /usr/ports/net/linuxigd ; make install
0007名無しさん@お腹いっぱい。NGNG
http://plaza.rakuten.co.jp/gobakuomedeto/
0008前スレの986NGNG
rc.confは
network_interfaces="xl0 xl1 lo0"
tcp_extensions="YES"
ifconfig_xl0="media 100baseTX mediaopt full-duplex up"
ifconfig_xl1="inet 192.168.1.1 netmask 255.255.255.0"
gateway_enable="YES"
ipfilter_enable="YES"
ipfilter_rules="/etc/ipf.rules"
ipfilter_flags=""
ipmon_enable="YES"
ipnat_enable="YES"
ipnat_rules="/etc/ipnat.rules"

/etc/ipf.rulesに
pass in all
pass out all
と書いてます。
これでもつながりません。
あとは何がたりないのでしょうか?
0009名無しさん@お腹いっぱい。NGNG
>>8
/etc/ipnat.rulesは?
0010名無しさん@お腹いっぱい。NGNG
network_interfaces="xl0 xl1 lo0"
に ng0 はいらないんだっけ?

つうか FreeBSD のバージョンは?

あとは、やっぱ ipnat だろうね
0011前スレの986NGNG
>>9
ありがとうございます。
map ng0 192.168.1.0/24 -> 0/32 portmap tcp/udp auto
map ng0 192.168.1.0/24 -> 0/32
を追加したら無事つながりました。
0012名無しさん@お腹いっぱい。NGNG
>>11
mssclamp 1414
付けとけ
0013名無しさん@お腹いっぱい。NGNG
ipfwとipfilter両方使いたいんだけど、
pseudo-device bpf
っている?
0014名無しさん@お腹いっぱい。NGNG
>>13
いらねー… はず。
0015名無しさん@お腹いっぱい。NGNG
あちこちのサイトを見てpppでPPPoEルーターを作ってるんだけど、現在は/etc/ppp/ppp.linkup
なしで下のようにtun0の表示がネットワークアドレスになっています。(network_addressの部分)

ifconfig -a
nic0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
inet host_ip_address netmask 0xfffffff8 broadcast ***.***.***.***
ether **:**:**:**:**:**
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
nic1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
ether **:**:**:**:**:**
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
inet 127.0.0.1 netmask 0xff000000
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1454
inet network_address --> provider_side netmask 0xffffffff
Opened by PID **
次に続く
0016名無しさん@お腹いっぱい。NGNG
PPPoEルーター製作サイトを見るとppp.linkupについては全く触れていない人もいるが、
ppp.linkupを下のように書いて無理やりtun0にホストIPアドレスをつけている人もいる。
provider:
! ifconfig tun0 delete
! ifconfig tun0 host_ip_address netmask 255.255.255.248 HISADDR
add! default HISADDR

この場合は下のようにnetwork_addressではなくhost_ip_addressになる。
ifconfig tun0
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1454
inet host_ip_address --> provider_side netmask 0xffffffff
Opened by PID **

動作上はどちらも変わらない見えるが、どちらが良いのだろう。
あるサイトではネットワークアドレスなのが「気持ち悪い」と書いていたが、
nic0とtun0と両方に同じIPアドレスを指定するのも気持ち悪い気がするのだが・・
0017名無しさん@お腹いっぱい。NGNG
>>15-16
ならつけなきゃ良いじゃん。
0018あぼーんNGNG
あぼーん
0019名無しさん@お腹いっぱい。NGNG
/etc/ipnat.rules
map ng0 from 192.168.1.0/24 ! to 192.168.0.0/16 -> 0/32 proxy port 1720 h323/tcp mssclamp 1414
map ng0 from 192.168.1.0/24 ! to 192.168.0.0/16 -> 0/32 proxy port ftp ftp/tcp mssclamp 1414
map ng0 from 192.168.1.0/24 ! to 192.168.0.0/16 -> 0/32 portmap tcp/udp auto mssclamp 1414
map ng0 from 192.168.1.0/24 ! to 192.168.0.0/16 -> 0/32 mssclamp 1414

うちはこんな感じ。
192.168.x.0/24で別拠点にIPsecトンネルがあったりもする。
0/32は固定IPを書いたりもする。
IPv6も貰っていたりする。
0020名無しさん@お腹いっぱい。NGNG
>>13
ではこのへんで感想をひと言だけ述べて挨拶に代えさせていただきます。

「ルータにbpfは入れたくない」
0021名無しさん@お腹いっぱい。NGNG
前スレ>>845がbpfいらなくするパッチを作れ。
0022名無しさん@お腹いっぱい。NGNG
DHCPやるのに必要なんだよな
0023名無しさん@お腹いっぱい。NGNG
いいじゃんBPF。なしてルーターには入れたくない?

@BPF自体が穴を増やすことになるから
A他の穴が原因でルータを乗っ取られた場合、BPFがあると悪用されるから

さあ DOTCH? できれば具体例を知りたい。
それに「ルータに」ということだけど、
「ルータ」であるマシンだから余計に危ないのかどうかも気になる。
0024名無しさん@お腹いっぱい。NGNG
FreeBSD-4.8Rでbirdgeがまともに動いた香具師いますか?

このバグがまだ治ってないような気がするのだが、、、
http://home.jp.freebsd.org/cgi-bin/showmail/FreeBSD-users-jp/59520
0025名無しさん@お腹いっぱい。NGNG
ipf は設定しなおしても 再起動 (ipf -Fa -Z -f /etc/ipf.rules)させても 、
まぁ今開いてるセッションとじないじゃないですか(当たり前だけど)

でも ipnat のほうは -CF しちゃうと全部切れちゃういますよね

-r で 特定のルールのみ消し、-f だけで重複しないルールだけ読み込
ませればいいのでしょうか?

やってみれば判るといわれりゃソレまでなんですかw
0026名無しさん@お腹いっぱい。NGNG
>>23
UNIX版でわざわざ機種依存文字を使うのは如何なものかと
0027名無しさん@お腹いっぱい。NGNG
>>25 自己レス

できました、重複しても既に有ると文句を言われるだけで今生きてるNATセッション
は切れませんでした
0028名無しさん@お腹いっぱい。NGNG
だめだ ipnat で 0.0.0.0/0 でも IPフォワードしてくれない・・・
実値じゃないとダメなのか
0029名無しさん@お腹いっぱい。NGNG
>>28 調べ方
・tcpdumpしてNATしてるか調べる。
・ipfilterでブロックしたものは全部ログる。
0030名無しさん@お腹いっぱい。NGNG
>>29 うーんそれ以前にipnat -l でルールとして認識されてないんですよ・・・
前スレ >904 に加筆

FreeBSD 4.8R + mpd + ipfilter(+ipnat)
(A)rdr ng0 0.0.0.0/32 port XXXX -> 192.168.0.3 port XXXX tcp
(A)rdr ng0 0.0.0.0/24 port XXXX -> 192.168.0.3 port XXXX tcp
(A)rdr ng0 0.0.0.0/0 port XXXX -> 192.168.0.3 port XXXX tcp
(B)rdr ng0 0/32 port XXXX -> 192.168.0.3 port XXXX tcp
(B)rdr ng0 0/24 port XXXX -> 192.168.0.3 port XXXX tcp
(B)rdr ng0 0/0 port XXXX -> 192.168.0.3 port XXXX tcp
(C)rdr ng0 (※)/32 port XXXX -> 192.168.0.3 port XXXX tcp
※ mpdを実行して割り当てられた動的IPを設定して、-CFオプションでipnatを再起動

と(C)の方法でしかNATが有効になりません

ipnat -l で見ても、 C のときしか有効ルールに認識されません(泣きが入ってます)

でもCの設定の時はちゃんとうまくルールに認識されるしIPフォワードされてるんです
もうなんか暑いしこれだけで夏ばてしちゃいそうですw

ちなみに、もう最悪の対処方法ですが rc.network の ipnat を -CF で呼び出す所の前に
NG0_IP=`/sbin/ifconifg ng0 | awk '{if($1=="inet")print $2}'`
/usr/bin/sed -e "s/NNGG00/$NG0_IP/" /etc/ipnat.def > /etc/ipnat.rules
※ /etc/ipnat.def は "rdr ng0 NNGG00/32 port XXXX -> 192.168.0.3 port XXXX tcp"
なんてことをしてます・・・(非常に泥臭いですw)
0031名無しさん@お腹いっぱい。NGNG
>>30
まだやってたのか

rdr ng0 0/0 port XXXX -> 192.168.0.3 port XXXX tcp

の一行だけ書いた/etc/ipnat.rulesで、ipnat -CF -f /etc/ipnat.rules
実行したらどうなるわけ? 問題切り分けろよ
■ このスレッドは過去ログ倉庫に格納されています