WiFi付きのSonyVaioノートブックを持っており、Fedora 20でホットスポット(アドホックなもの)をセットアップする必要があります。
私はDebianとSuSEの下でそれを成功させましたが、Fedoraの下ではシステムまたは何かの基礎を理解するのに苦労しています。
ホットスポットを構成する2つの方法を見つけました。
Dnsmasq-wayが機能しません-エラーが発生し、Androidが新しいネットワークを認識できません。
dhcp-wayはほぼ機能します-Androidネットワークに接続します。新しいIPがありますが、DNS解決またはマスカレードに問題があります。何がわかりません。Androidに白いWiFiアイコンが表示され、リクエストのタイムアウト(play.googleなど)が経過するとインターネットに接続できなくなります。
私のwifiインターフェースはwlp7s0です
私のインターネット接続はp5p1です
以下に、configスクリプトとdhcp-wayスクリプトを示します。
# cat /etc/dhcp/dhcpd.conf
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.2 192.168.0.30;
option subnet-mask 255.255.255.0;
option domain-name-servers 8.8.4.4, 8.8.8.8;
option routers 192.168.0.1;
}
# cat /etc/hostapd/hostapd.conf
ctrl_interface=/var/run/hostapd
ctrl_interface_group=wheel
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
# WPA & WPA2 support with a pre-shared key
wpa=3
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
# WPA passphrase
wpa_passphrase=MYCOOLPASS
driver=nl80211
interface=wlp7s0
hw_mode=g
channel=11
ssid=NETNAME
ホットスポットを開始するスクリプト(手動モード):
systemctl stop NetworkManager.service
service dhcpd stop
service hostapd stop
sleep 1
ifconfig wlp7s0 192.168.0.1 netmask 255.255.255.0 up
sysctl net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o p5p1 -j MASQUERADE
sleep 1
service dhcpd start
service hostapd start
これを機能させる方法に関するアドバイスはありますか?
そしてnooooww ...私のスクリプトの最終バージョン:
systemctl stop NetworkManager.service
service dhcpd stop
service hostapd stop
sleep 1
ifconfig wlp7s0 192.168.0.1 netmask 255.255.255.0 up
# REPLACED BY NEW FIREWALL COMMAND BELOW
# sysctl net.ipv4.ip_forward=1
# iptables -t nat -A POSTROUTING -o p5p1 -j MASQUERADE
firewall-cmd --add-masquerade # <-- Yes! It is this! :)
sleep 1
service dhcpd start
service hostapd start
先に話したように、私の問題の原因は古い2つではなく1つの文字列でした。
firewall-cmd --add-masquerade
まず、覚えておくようにします-Fedoraのセキュリティの違いは何ですか。
その1つが「firewalld」です。
Sudo firewall-cmd --list-all-zones
私のすべてのコマンドの後に、外部インターフェース「マスカレード:いいえ」で私を表示します。
sysctl net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o p5p1 -j MASQUERADE
そのため、スクリプトを再度実行する前にファイアウォールを無効にしようとしています。
systemctl stop firewalld.service
そして、ウーアリア!ホットスポットは仕事です! :)))
代わりにiptablesをマスカレードしているfirewalldを設定しようとするかもしれません。
NetworkManagerを使用してホットスポットを設定できます。
セットアップhostapd
(driver = noneを使用)およびdhcpd
に加えて、DHCP範囲(ゲートウェイでもある)からのIPを使用してワイヤレス接続をセットアップする必要があります。モード:「アクセスポイント」(およびhostapd.confからの一致した設定-ワイヤレスタイプとバンド)
開始シーケンス:
sysctl net.ipv4.ip_forward=1
nmcli connection up hotspot
sleep 3
systemctl start dhcpd.service
systemctl start hostapd.service
iptables -t nat -A POSTROUTING -o em1 -j MASQUERADE
the stop sequence:
nmcli connection down hotspot
sleep 3
sysctl net.ipv4.ip_forward=0
systemctl stop dhcpd.service
systemctl stop hostapd.service
iptables -t nat -F