我的要求:
我需要从电脑上运行一个wifi热点。连接到热点的人应该能够在访问互联网时以全速和节流的速度访问PC上运行的本地Web服务器。我尝试使用下面列出的软件工具设置系统。我在低功耗电脑上运行它。所以我希望它尽可能优化。我需要你检查并确认我是否正在做这一切。
界面和PC设置:
dnsmasq配置文件:(用于ip范围和dns设置)
interface=wlan0 # Use interface wlan0
except-interface=lo
listen-address=172.24.1.1 # Explicitly specify the address to listen on
bind-interfaces # Bind to the interface to make sure we aren't sending things elsewhere
server=8.8.8.8 # Forward DNS requests to Google DNS
domain-needed # Don't forward short names
bogus-priv # Never forward addresses in the non-routed address spaces.
dhcp-range=172.24.1.50,172.24.1.150,12h # Assign IP addresses between 172.24.1.50 and 172.24.1.150 with a 12 hour lease time
用于路由流量
IP表条目
的Rule1
Squid(throttling networkspeed)服务器在端口3128中运行。因此,将eth0(互联网提供接口名称)tcp端口80和443路由到squid服务器以限制网络速度。所以squid就像代理服务器一样运行。
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 172.24.1.1:3128
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j DNAT --to 172.24.1.1:3128
规则2
这里将wlan0(客户端)请求路由到在端口3128中运行的squid代理服务器
sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp --dport 80 -j REDIRECT --to-port 3128
sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp --dport 443 -j REDIRECT --to-port 3128
规则3
有助于为与wlan0
连接的客户提供回复sudo iptables --t nat -A POSTROUTING --out-interface wlan0 -j MASQUERADE
Rule4
将特定的ip请求路由到lo(本地服务器在127.0.0.1:80中运行)
iptables -t nat -A PREROUTING -i wlan0 -p tcp -d 172.24.1.1 -j DNAT --to-destination 127.0.0.1:80
鱿鱼配置
acl test src 172.24.1.2/24
delay_pools 1
delay_class 1 1
delay_parameters 1 100000/100000 #100kilobyte per second
delay_access 1 allow test
所有这些看起来都有效,但有时PC和网络变慢,当很多人访问热点时肯定会很慢。
另外,我如何对此防火墙系统进行性能分析?
答案 0 :(得分:1)
您是否确认客户端请求不会超过网络接口的最大吞吐量?从而导致硬件瓶颈?