ฉันใช้ XUbuntu 17.10 และฉันได้สร้างฮอตสปอต wifi แล้วปัญหาคือฉันต้องการใช้ฮอตสปอตสำหรับแซมบ้าและสิ่งอื่น ๆ ที่ไม่ต้องการการเชื่อมต่ออินเทอร์เน็ต ฉันจะสร้างฮอตสปอต wifi ที่ไม่แชร์การเชื่อมต่ออินเทอร์เน็ตของฉันได้อย่างไร เป็นไปได้ไหม
ฉันใช้ XUbuntu 17.10 และฉันได้สร้างฮอตสปอต wifi แล้วปัญหาคือฉันต้องการใช้ฮอตสปอตสำหรับแซมบ้าและสิ่งอื่น ๆ ที่ไม่ต้องการการเชื่อมต่ออินเทอร์เน็ต ฉันจะสร้างฮอตสปอต wifi ที่ไม่แชร์การเชื่อมต่ออินเทอร์เน็ตของฉันได้อย่างไร เป็นไปได้ไหม
คำตอบ:
วิธีการแก้ปัญหาที่ง่ายคือการใช้create_ap จากเว็บไซต์ของพวกเขา:
create_ap เป็นเครื่องมือที่ช่วยให้คุณสร้าง AP แบบเปิดหรือเข้ารหัสที่ช่องใด ๆ ซ่อน SSID ของคุณปิดการสื่อสารระหว่างไคลเอนต์ (แยกไคลเอ็นต์), รองรับ IEEE 802.11n และ 802.11ac, วิธีแบ่งปันอินเทอร์เน็ต: NATed หรือ Bridged หรือไม่มี (ไม่มี การแบ่งปันทางอินเทอร์เน็ต)
สำหรับกรณีของคุณคุณต้องการสร้าง AP ด้วย linux pc โดยไม่ต้องแชร์อินเทอร์เน็ตจากดองเกิลของคุณกับลูกค้า แต่สามารถทำสิ่งอื่น ๆ ของ Lan เช่นการแชร์ไฟล์
การ์ด wifi ของคุณต้องรองรับการสร้าง AP
ติดตั้งแพคเกจบางส่วน:
sudo apt install util-linux bash procps hostapd iproute2 iw haveged net-tools dnsmasq iptables
รับcreate_apแพ็คเกจ จากอาคารผู้โดยสารทำ
git clone https://github.com/oblique/create_ap
cd create_ap
sudo make install
หลังการติดตั้งให้ตรวจสอบชื่อโมเด็มและการ์ด wifi ของคุณด้วยifconfig(คัดค้าน) หรือ:
iwconfig
บัตร WiFi โดยปกติจะเป็นwlan0หรือwlp2s0และโมเด็ม USB eth0คือ คุณอาจแตกต่างกัน
ตอนนี้เริ่มฮอตสปอตจาก linux ของคุณโดยไม่ใช้อินเทอร์เน็ต:
sudo create_ap -n wlp2s0 MyAccessPoint
จากนั้นคุณสามารถเชื่อมต่อลูกค้า อินเทอร์เน็ตของคุณจะไม่ถูกแชร์ แต่คุณสามารถทำแซมบ้าและสิ่งอื่น ๆ โดยไม่ใช้อินเทอร์เน็ต
นี่คือสคริปต์ที่จะสร้าง Hotspot แต่ไม่แชร์Ethernetอินเทอร์เน็ตกับWiFiอุปกรณ์ คุณจะต้องเปลี่ยนชื่ออินเตอร์เฟสเครือข่ายตามระบบของคุณ
พิมพ์ip linkเพื่อค้นหา ยังให้แน่ใจว่าคุณได้ติดตั้งและdnsmasqhostapd
sudo apt-get install ifconfig dnsmasq hostapd
ก่อนเรียกใช้สคริปต์คุณจะต้องหยุดเครื่องมือการจัดการเครือข่ายใด ๆที่ควบคุมWiFiอยู่
eth-to-wifi-route.sh
#!/bin/bash
# Share Eth with WiFi Hotspot
#
# This script is created to work with Raspbian Stretch
# but it can be used with most of the distributions
# by making few changes.
#
# Make sure you have already installed `dnsmasq` and `hostapd`
# Please modify the variables according to your need
# Don't forget to change the name of network interface
# Check them with `ifconfig`
ip_address="192.168.2.1"
netmask="255.255.255.0"
dhcp_range_start="192.168.2.2"
dhcp_range_end="192.168.2.100"
dhcp_time="12h"
eth="eth0" # replace it with Huawei 3G Modem interface
wlan="wlan0"
ssid="Arpit-Raspberry"
psk="arpit1997"
sudo rfkill unblock wlan &> /dev/null
sleep 2
#sudo iptables -F
#sudo iptables -t nat -F
#sudo iptables -t nat -A POSTROUTING -o $eth -j MASQUERADE
#sudo iptables -A FORWARD -i $eth -o $wlan -m state --state RELATED,ESTABLISHED -j ACCEPT
#sudo iptables -A FORWARD -i $wlan -o $eth -j ACCEPT
#sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
sudo ifconfig $wlan $ip_address netmask $netmask
sudo ip route del 0/0 dev $wlan &> /dev/null
a=`route | awk "/${eth}/"'{print $5+1;exit}'`
sudo route add -net default gw $ip_address netmask 0.0.0.0 dev $wlan metric $a
echo -e "interface=$wlan \n\
bind-interfaces \n\
server=8.8.8.8 \n\
domain-needed \n\
bogus-priv \n\
dhcp-range=$dhcp_range_start,$dhcp_range_end,$dhcp_time" > /etc/dnsmasq.conf
sudo systemctl restart dnsmasq
echo -e "interface=$wlan\n\
driver=nl80211\n\
ssid=$ssid\n\
hw_mode=g\n\
ieee80211n=1\n\
wmm_enabled=1\n\
macaddr_acl=0\n\
auth_algs=1\n\
ignore_broadcast_ssid=0\n\
wpa=2\n\
wpa_key_mgmt=WPA-PSK\n\
wpa_passphrase=$psk\n\
rsn_pairwise=CCMP" > /etc/hostapd/hostapd.conf
sudo systemctl restart hostapd
sudo systemctl status hostapd &> /dev/null
if [ "$?" != 0 ];then
echo "Some Network Management tool is running, which is stopping"
echo "hostapd to be configured."
echo "Please stop that and again run the script."
fi
ฉันได้แสดงความคิดเห็นiptableและpacket forwardingคำสั่ง หากทุกเวลาที่คุณต้องการให้อินเทอร์เน็ตกับอุปกรณ์เพียงแค่ยกเลิกการคอมเม้นต์พวกเขา
เรียกใช้สคริปต์
sudo bash eth-to-wifi-route.sh
ที่มา: eth-to-wifi-route.sh