ฉันใช้ 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
เพื่อค้นหา ยังให้แน่ใจว่าคุณได้ติดตั้งและdnsmasq
hostapd
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