こんにちは。
はじめまして、黄と申します。

この問題ですが、先日ちょうど私もまったく同じような現象とあったことあります。
原因はFreeBSDにあるこのNICのドライバが古いみたいです。
対策としては、カーネルの再構築が必要かもしれません。
ドライバは以下のサイトからダウンロードすることが出来ます。
http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=2&PNid=13&PFid=5&Level=5&Conn=4&DownTypeID=3&GetDown=false#2

以下は中にあるReadmeの内容です。


=================================================================================
=  Realtek 8139C/8139C+/8169S/8169SB/8169SC/8168B/8101E Driver for
FreeBSD v4.x/5.x/6.0
    =
=================================================================================

This driver is modified by Realtek Semiconductor corp. and it has been tested OK
on FreeBSD 4.7, FreeBSD v5.1, FreeBSD v5.4, and FreeBSD v6.0. To
update the driver, you may use method 1
. If method 1 failed,
you must use method 2 which is more complex.

Method 1:
        1.Copy if_rl.ko in "modules" directory to "/modules" directory
and overwrite
          the existing file.
        2.Modify the file "/boot/defaults/loader.conf" and set
"if_rl_load" in "Network
          drivers" section to "Yes"
        3.Reboot.

Method 2:
        Because the FreeBSD kernel has default drivers to support
RTL8139C and RTL8169S. To use the RTL8
139C+, RTL8169SB, RTL8169SC, RTL8168B, and RTL8101E, you need to
update your NIC driver by recompiling your FreeBSD kernel.

        The main steps you have to do:(FreeBSDSrcDir means the
directory of FreeBSD source code and it may be "/usr/src/sys")

                1. keep the orginal driver source code:
                        # cd /usr/src/sys/pci
                        # cp if_rl.c if_rl.c.org
                        # cp if_rlreg.h if_rlreg.h.org

                        # cd /usr/src/sys/modules
                        # cp Makefile Makefile.org

                        # cd /usr/src/sys/modules/rl
                        # cp Makefile Makefile.org

                        # cd /usr/src/sys/i386/conf/
                        # cp GENERIC GENERIC.org

                2. recompile your kernel        (you must install your
FreeBSD source code first !!)
                        # vim /usr/src/sys/i386/conf/GENERIC and
delete rl and re
                        # vim /usr/src/sys/modules/Makefile and delete rl and re
                        # cd /usr/src/sys/i386/conf
                        # /usr/sbin/config GENERIC

                        (for FreeBSD 5.x/6.x)
                        # cd ../compile/GENERIC
                        (for FreeBSD 4.x)
                        # cd ../../compile/GENERIC

                        # make depend
                        # make
                        # make install
                        # reboot

                3. update the driver source code:
                    Copy the dirver source code( if_rl.c and
if_rlreg.h) into /usr/src/sys/pci
                    Copy the Makefile into /usr/src/sys/modules/rl

                4. build the driver:
                        # cd /usr/src/sys/modules/rl
                        # make clean
                        # make

                5. install the driver
                        # cd /usr/src/sys/modules/rl
                        # kldload ./if_rl.ko

                6. configurate the static IP address
                        # ifconfig rl0 xxx.xxx.xxx.xxx

                7. configurate the IP address by DHCP
                        # /sbin/dhclient rl0

The user can use the following command to change link speed and duplexmode.
        1. For autonegotiation,
                #ifconfig rl<device_num> media autoselect

        2. For 1000Mbps full-duplex,
                #ifconfig rl<device_num> media 1000baseTX mediaopt full-duplex

        3. For 100Mbps full-duplex,
                #ifconfig rl<device_num> media 100baseTX mediaopt full-duplex

        4. For 100Mbps half-duplex,
                #ifconfig rl<device_num> media 100baseTX mediaopt half-duplex

        5. For 10Mbps full-duplex,
                #ifconfig rl<device_num> media 10baseT/UTP mediaopt full-duplex

        6. For 10Mbps half-duplex,
                #ifconfig rl<device_num> media 10baseT/UTP mediaopt half-duplex


以上です。
ご参考になれば幸いです。


07/12/19 に 
[&#x30E1;&#x30FC;&#x30EB;&#x30A2;&#x30C9;&#x30EC;&#x30B9;&#x4FDD;&#x8B77;]<[&#x30E1;&#x30FC;&#x30EB;&#x30A2;&#x30C9;&#x30EC;&#x30B9;&#x4FDD;&#x8B77;]>
 さんは書きました:
> はじめまして。岡崎といいます。
> 10年ほどFreeBSDを使っていまして、
> 1ヶ月ほど前から上記の現象が解決できず悩んでいます。
>
> AOpen Cube 965Zに、Core2Quad Q6600 を載せ、
> チップセットはG965+ICH8、オンボードLANはRTL8111Bだったと思います。
> この構成にFreeBSD6.2releaseをCDROM経由で入れて、ネットワークの設定をします。
> これでpingは通ります。ここまではフツウです。
>
> 次にrc.confにinet.dを起動するように設定して、
> inetd.confからtelnetdを有効にするようにコメントアウトの"#"を削除します。
> 何もインストールしませんし、カーネルの再構築もしません。
> じれでMac OSXやFreeBSD5.3Rからのtelnetはできます。
> ここまでもフツウです。
>
> しかし、同じハブで同じセグメントのWinXPからteratermやUTFteratermで
> telnetしようとすると、loginプロンプトが出てくるまで2秒かかり、一応loginできま
> すが、
> loginしてからシェルを使っているうちにだんだん5秒10秒15秒と遅くなります。
> DOS窓からのtelnetだとloginできませんでした。
> TCPパケットを調べてもらうと、お互いがackを受け取れてなくて、
> 何度もお互いのパケットを再送しているらしいです。
> 別のWinXPでも同じ現象です。
>
> MacOSやFreeBSDとWinXPの違いはおそらく、
> OSXとFreeBSD5.3Rはtelnetクライアントが暗号化できるなら
> 暗号化するように作られているところではないかと思うのですが、
> 他には思い当たりません。
> telnetdで何が起きてるか調べようと、inetd.confのtelnetdの行を
> telnetd -D report とデバグモードにすると、
> WinXPからの反応は待たされることがなくフツウに早かったので
> この不具合?は再現できなくなりました。
>
> 6.2は何か設定にコツが必要なのでしょうか。
> このマシンは6.1/5.5/5.4/5.3を入れてみましたが6.2だけLANが動作し、
> それ以前だとドライバが対応していないようです。
> 同じ症状で悩んでいる人もWEBに見つからなかったのでよければ何かご教授いただけ
> るとありがたいです。
>
>
>


-- 
黄 炎晟 (Yansheng HUANG)

メールによる返信