私はインターネットに接続せずにUbuntu 20.04を実行しているデバイス(Raspberry Piなど)でホットスポットをホストしています。私はホットスポットを使用して、他のデバイスがそのサーバーで実行されているサーバーに接続し、HTTP要求を実行できるようにします。しかし、接続されたクライアント(携帯電話、ノートパソコンなど)がDNSの問題によって(まだ4G / Ethernetに接続されているにもかかわらず)、インターネット使用機能を失うことがよくあります。これはChromeを使用すると一般的に見られるバグです。ホットスポットに接続すると、電話に「DNS_PROBE_FINISHED_NO_INTERNET」と表示されます。
そのホットスポットが利用できない場合でも、クライアントがDNS /インターネット接続にWi-Fiホットスポットを使用することを優先すると仮定しますか? 192.168.10.0/24または特定の住所(例:www.foobar.com?
nmcliを使用してホットスポットネットワークを設定し、dnsmasqをDHCPサーバーとして設定します。より具体的な設定は次のとおりです。
WIFI_IF="wlan0"
CON_NAME="myhotspot"
SSID="myhotspot"
MY_IP="192.168.10.1"
sudo nmcli con add type wifi ifname $WIFI_IF con-name $CON_NAME autoconnect yes ssid $SSID
sudo nmcli con modify $CON_NAME 802-11-wireless.mode ap ipv4.method manual ipv4.addresses $MY_IP/24 ipv4.gateway $MY_IP
sudo nmcli con modify $CON_NAME wifi-sec.key-mgmt wpa-psk
sudo nmcli con modify $CON_NAME wifi-sec.psk $2 # password
sudo nmcli con modify $CON_NAME connection.autoconnect-priority 10
sudo nmcli con up $CON_NAME
dnsmasq DHCP サーバーでは、次の dnsmasq.conf を使用します。
no-resolv
bind-interfaces
interface=wlan0
listen-address=192.168.10.1,127.0.0.1
# address=/www.foobar.com/192.168.10.1 # redirect queries to this address to myself
dhcp-range=192.168.10.100,192.168.10.250,255.255.255.0,12h
dhcp-option=option:router,192.168.10.1
dhcp-leasefile=/var/lib/misc/dnsmasq.leases
port=0
dnsmasqでDNSをオフにしようとしましたが、役に立ちませんでした。
答え1
ホットスポットがデフォルトゲートウェイとして機能することを望まない場合は、これを実行しないでください。つまり、以下を削除する必要があります。
dhcp-option=option:router,192.168.10.1
PS 私はport=0
これがまだ良いアイデアだと思いますが、技術的には、クライアントはそのDNSサーバーがクライアントのコンテキストにdhcp-option=
関連しているため、DNSサーバーが存在すると仮定しません。