Сервак Freebsd 7.0 раздает в сетку интернет на 20 компов, всем им нужно задать определенную скорость. Например с 10.1.1.33 по 10.1.1.43 - поставить лимит скорости 128К. Остальные 10 нужно уже каждому задавать по отдельности. Как сделать так чтобы юзер не мог поменять себе айпиху и юзать свободно канал, что нужно писать в IPFW? Я полагаю нужно заблокировать весь диапазон IP 10.1.1.0/24 и разрешить только те, которые используются? Как это сделать? Немного информации:
# ifconfig rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=8<VLAN_MTU> ether 00:02:2a:e1:09:b1 inet 81.30.17x.xxx netmask 0xfffffffc broadcast 81.30.17x.xxx #Внешний IP media: Ethernet autoselect (10baseT/UTP) status: active rl1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=8<VLAN_MTU> ether 00:e0:4d:3d:ef:6c inet 10.1.1.6 netmask 0xffffff00 broadcast 10.1.1.255 #Внутренний IP media: Ethernet autoselect (100baseTX <full-duplex>) status: active lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3 inet6 ::1 prefixlen 128 inet 127.0.0.1 netmask 0xff000000
#ee /etc/rc.conf
defaultrouter="81.30.17x.xxx" # Здесь IP провайдера ifconfig_rl0="inet 81.30.17x.xxx netmask 255.255.255.252" # белый IP сервера ifconfig_rl1="inet 10.1.1.6 netmask 255.255.255.0" # внутренний адрес hostname="router" sshd_enable="YES" usbd_enable="NO" gateway_enable="YES" firewall_enable="YES" firewall_script="/etc/firewall.rc" natd_enable="YES" natd_flags="-a 81.30.17x.xxx"
# ee /etc/firewall.rc
ipfw flush ipfw add pipe 1 all from not 10.1.1.6 to 10.1.1.17 out xmit rl1 #Режет скорость ipfw pipe 1 config bw 384Kbit/s # юзеру при этом качать по сети может без ограничений ipfw add divert natd ip from 10.1.1.216/29 to not 10.1.1.0/24 ipfw add divert 8668 ip from 10.1.1.0/24 to any out via rl0 ipfw add divert 8668 ip from any to 81.30.17x.xxx in via rl0 ipfw add allow all from any to any
|