FreeBSDでワイヤレスネットワークを設定する:ルーターにワイヤレスデバイスが接続されていると表示されますが、pingできません。

FreeBSDでワイヤレスネットワークを設定する:ルーターにワイヤレスデバイスが接続されていると表示されますが、pingできません。

私の問題は次のように見えます。これ

FreeBSD 10.3-STABLE では、Broadcom BCM4311 802.11b/g デバイスを次のように設定しました。

sudo kldload if_bwn 
sudo kldload bwn_v4_ucode 
sudo kldload bwn_v4_lp_ucode 
#
# Now, interface `bwn0` is available
#
sudo ifconfig wlan0 create wlandev bwn0 
sudo ifconfig wlan0 up # at this moment, laptop WiFi LED light turns on
sudo ifconfig wlan0 scan # I can see my wireless router SSID
sudo wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf 
sudo ifconfig wlan0 list sta 
sudo dhclient wlan0 
#
# Optionally, rather than dhclient run:
#
sudo ifconfig wlan0 inet 192.168.1.103 netmask 0xffffff00

ifconfig接続されたワイヤレスネットワークのステータスを表示:

$ ifconfig
bge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=8009b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,LINKSTATE>
    ether 00:15:c5:ad:63:9c
    inet 192.168.1.101 netmask 0xffffff00 broadcast 192.168.1.255 
    nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
    media: Ethernet autoselect (100baseTX <full-duplex>)
    status: active
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
    options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6>
    inet6 ::1 prefixlen 128 
    inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2 
    inet 127.0.0.1 netmask 0xff000000 
    nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
bwn0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 2290
    ether 00:18:f3:38:a0:36
    nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
    media: IEEE 802.11 Wireless Ethernet autoselect mode 11g
    status: associated
wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    ether 00:18:f3:38:a0:36
    inet 192.168.1.103 netmask 0xffffff00 broadcast 192.168.1.255 
    nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
    media: IEEE 802.11 Wireless Ethernet OFDM/48Mbps mode 11g
    status: associated
    ssid Mine channel 11 (2462 MHz 11g) bssid e8:de:27:6b:3e:67
    country US authmode WPA2/802.11i privacy ON deftxkey UNDEF
    TKIP 2:128-bit txpower 30 bmiss 7 scanvalid 60 bgscan bgscanintvl 300
    bgscanidle 250 roam:rssi 7 roam:rate 5 protmode CTS wme roaming MANUAL
$ 

ノートパソコンのイーサネットケーブルを外し、次のようにルータへのワイヤレス接続を確認しました。

ワイヤレスルーターは、私のラップトップが「現在接続されているワイヤレスクライアント」にリストされていることを示しています。

ID  MAC
1   00:18:F3:38:A0:36

ワイヤレスルーターには、ラップトップにpingを送信するために使用できる診断pingツールがあります。これを実行すると、次のtimed outメッセージが表示されます。

IP Address/Domain Name: 192.168.1.103

Request timed out

ラップトップからルーターにpingを送信します。

$ ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1): 56 data bytes
ping: sendto: No route to host
ping: sendto: No route to host
ping: sendto: No route to host
ping: sendto: No route to host
ping: sendto: No route to host
^C
--- 192.168.1.1 ping statistics ---
5 packets transmitted, 0 packets received, 100.0% packet loss
$ 

arp -an出力:

$ arp -an
? (192.168.1.103) at 00:18:f3:38:a0:36 on wlan0 permanent [ethernet]
? (192.168.1.1) at e8:de:27:6b:3e:67 on bge0 expires in 803 seconds [ethernet]
? (192.168.1.101) at 00:15:c5:ad:63:9c on bge0 permanent [ethernet]
$ 

netstat -r出力:

$ netstat -r
Routing tables

Internet:
Destination        Gateway            Flags      Netif Expire
default            192.168.1.1        UGS        bge0
localhost          link#2             UH          lo0
192.168.1.0        link#4             U         wlan0
192.168.1.101      link#1             UHS         lo0
192.168.1.103      link#4             UHS         lo0

Internet6:
Destination        Gateway            Flags      Netif Expire
::                 localhost          UGRS        lo0
localhost          link#2             UH          lo0
::ffff:0.0.0.0     localhost          UGRS        lo0
fe80::             localhost          UGRS        lo0
fe80::%lo0         link#2             U           lo0
fe80::1%lo0        link#2             UHS         lo0
ff01::%lo0         localhost          U           lo0
ff02::             localhost          UGRS        lo0
ff02::%lo0         localhost          U           lo0
$ 

dmesgwlan0インターフェース生成からコマンドへの出力dhclient:

wlan0: Ethernet address: 00:18:f3:38:a0:36
bwn0: firmware version (rev 410 patch 2160 date 0x751a time 0x7c0a)
wlan0: ieee80211_new_state_locked: pending INIT -> SCAN transition lost
bwn0: status of RF switch is changed to OFF
bwn0: please turn on the RF switch
bwn0: firmware version (rev 410 patch 2160 date 0x751a time 0x7c0a)
bwn0: status of RF switch is changed to OFF
bwn0: please turn on the RF switch
wlan0: link state changed to UP
bwn0: need multicast update callback
bwn0: need multicast update callback
bwn0: need multicast update callback

構成ファイル

私は使用せずに/etc/rc.confすべてを手動で行います。次のwpa_supplicant構成を使用します。

$ cat /etc/wpa_supplicant.conf 
network={
    ssid="Mine"
    psk=79a174594e2ec3563ff4c35c1a82a006b19df646fa020aaf53078d34d09ed962
}
$

誰かが助けを借りることができるかどうか疑問に思います。


修正する:

次に、/etc/rc.conf次のように使用します。

#
# Kernel modules to load after local disks are mounted
#
kld_list="linux nvidia if_bwn bwn_v4_ucode bwn_v4_lp_ucode fuse"
#
# DELL LATITUDE | D820
#
hostname="D820"
#
# $ sudo ifconfig wlan0 create wlandev bwn0
#
wlans_bwn0="wlan0"
#
# $ sudo ifconfig wlan0 up
# $ sudo ifconfig wlan0 scan
# $ sudo wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf
# $ sudo dhclient wlan0
#
wpa_supplicant_conf_file="/etc/wpa_supplicant.conf"
ifconfig_wlan0="WPA DHCP"
#
# gnome3-lite desktop environment services
#
#dbus_enable="YES"
#hald_enable="YES"
#gdm_enable="YES" # GDM will start automatically when the system boots
#gnome_enable="YES"
#linux_enable="YES"
##
## To enable the tor server
##
#tor_enable="YES"
##
## web proxy of choice
##
#polipo_enable="YES"
#privoxy_enable="YES"
##
##For Linux compatibility to be enabled at boot time
##
linux_enable="YES"

答え1

ラップトップを起動してbge0有線インターフェイスを設定すると、dhclientこのルートはデフォルトルートになります(出力の一番右の列に表示されますnetstat -r)。後でワイヤレスbwn0インターフェイスを設定して有線インターフェイスを切断すると、デフォルトルートには設定されません。ネットワークにアクセスしようとしたり、要求に応答しようとすると、トラフィックは試行されますが、bge0接続は失われます。

ラップトップを再起動した後に簡単にワイヤレスインターフェイスを設定すると、この問題は発生しません。

後で有線から無線に切り替えるには、次のようにします。

route change default -iface wlan0
route change default 192.168.1.1

これにより、デフォルトのルーティングインターフェイスがワイヤレスインターフェイスに設定され、ルータアドレスがリセットされるため、2行目に再追加します。

関連情報