а теперь усложняем задачу.
Вобщем сама суть.
Есть интернет которй приходит на fxp0 ip 212.3.113.26
Есть две сетевые rl0 и rl1 котрые смотрят в разные сети.
надо сделать чтобы локальный трафик шел на 100 мегабит.
Городской на 1 мегабит (в обе стороны)
Мир вход 128к, исход 1мегабит.
также надо раздать приоритеты на пользователей.
/usr/local/etc/rc.d/ipfwp.sh
Код: Выделить всё
#!/bin/sh
/sbin/ipfw -f flush
/sbin/ipfw -f table 1 flush
/sbin/ipfw -f table 2 flush
/sbin/ipfw -f pipe flush
/sbin/ipfw -f queue flush
natd -a 212.3.113.26
# --- Table Local ---
cat /usr/local/etc/table/table1.loc |
{
while read table1
do
ipfw table 1 add $table1
done
}
# --- /Table Local ---
# --- Table ZP-X ---
cat /usr/local/etc/table/table2.zpx |
{
while read table2
do
ipfw table 2 add $table2
done
}
# --- /Table ZP-X ---
/sbin/ipfw pipe 10 config bw 100Mbit/s queue 100
/sbin/ipfw pipe 11 config bw 100Mbit/s queue 100
/sbin/ipfw pipe 20 config bw 1Mbit/s queue 100
/sbin/ipfw pipe 21 config bw 1Mbit/s queue 100
/sbin/ipfw pipe 30 config bw 128Kbit/s queue 100
/sbin/ipfw pipe 31 config bw 1Mbit/s queue 100
# --- Prioritet ---
#visokiy
/sbin/ipfw queue 10 config pipe 10 weight 80 queue 100 mask dst-ip 0xFFFFFFFF
/sbin/ipfw queue 11 config pipe 11 weight 80 queue 100 mask src-ip 0xFFFFFFFF
/sbin/ipfw queue 12 config pipe 20 weight 80 queue 100 mask dst-ip 0xFFFFFFFF
/sbin/ipfw queue 13 config pipe 21 weight 80 queue 100 mask src-ip 0xFFFFFFFF
/sbin/ipfw queue 14 config pipe 30 weight 80 queue 100 mask dst-ip 0xFFFFFFFF
/sbin/ipfw queue 15 config pipe 31 weight 80 queue 100 mask src-ip 0xFFFFFFFF
#sredniy
/sbin/ipfw queue 20 config pipe 10 weight 50 queue 100 mask dst-ip 0xffffffff
/sbin/ipfw queue 21 config pipe 11 weight 50 queue 100 mask src-ip 0xffffffff
/sbin/ipfw queue 22 config pipe 20 weight 50 queue 100 mask dst-ip 0xffffffff
/sbin/ipfw queue 23 config pipe 21 weight 50 queue 100 mask src-ip 0xffffffff
/sbin/ipfw queue 24 config pipe 30 weight 50 queue 100 mask dst-ip 0xffffffff
/sbin/ipfw queue 25 config pipe 31 weight 50 queue 100 mask src-ip 0xffffffff
#nizkiy
/sbin/ipfw queue 30 config pipe 10 weight 30 queue 100 mask dst-ip 0xffffffff
/sbin/ipfw queue 31 config pipe 11 weight 30 queue 100 mask src-ip 0xffffffff
/sbin/ipfw queue 32 config pipe 20 weight 30 queue 100 mask dst-ip 0xffffffff
/sbin/ipfw queue 33 config pipe 21 weight 30 queue 100 mask src-ip 0xffffffff
/sbin/ipfw queue 34 config pipe 30 weight 30 queue 100 mask dst-ip 0xffffffff
/sbin/ipfw queue 35 config pipe 31 weight 30 queue 100 mask src-ip 0xffffffff
# --- /Prioritet ---
/sbin/ipfw add 30 queue 10 ip from table'(1)' to 10.10.107.2
/sbin/ipfw add 31 queue 11 ip from 10.10.107.2 to table'(1)'
/sbin/ipfw add 32 queue 12 ip from table'(2)' to 10.10.107.2
/sbin/ipfw add 33 queue 13 ip from 10.10.107.2 to table'(2)'
/sbin/ipfw add 34 queue 14 ip from any to 10.10.107.2
/sbin/ipfw add 35 queue 15 ip from 10.10.107.2 to any
/sbin/ipfw add 36 divert natd ip from table'(1)' to 10.10.107.2 in via fxp0
/sbin/ipfw add 37 divert natd ip from 10.10.107.2 to table'(1)' out via fxp0
/sbin/ipfw add 38 divert natd ip from table'(2)' to 10.10.107.2 in via fxp0
/sbin/ipfw add 39 divert natd ip from 10.10.107.2 to table'(2)' out via fxp0
/sbin/ipfw add 40 divert natd ip from any to 10.10.107.2 in via fxp0
/sbin/ipfw add 41 divert natd ip from 10.10.107.2 to any out via fxp0
/sbin/ipfw add 200 divert natd ip from any to 212.3.113.26 in via fxp0
/usr/local/etc/table/table1.loc
Код: Выделить всё
10.10.101.0/24
10.10.102.0/24
10.10.103.0/24
10.10.104.0/24
10.10.105.0/24
212.3.113.24/29
212.3.115.16/30
/usr/local/etc/table/table2.zpx
Код: Выделить всё
193.17.75.0/24
193.19.74.0/23
193.19.108.0/23
212.3.108.0/24
212.3.125.0/24
81.90.224.0/21
81.90.224.0/20
81.90.225.0/24
81.90.232.0/24
81.90.236.0/24
212.3.107.0/24
80.254.0.0/20
80.84.176.0/20
212.3.106.0/24
212.3.123.0/24
212.3.120.0/24
212.3.105.0/24
193.0.228.0/24
194.44.58.0/24
212.3.104.0/24
212.3.121.0/24
212.42.91.0/24
212.3.103.0/24
212.3.102.0/24
194.44.67.0/24
195.85.219.0/24
195.177.240.0/24
193.201.98.0/24
212.3.101.0/24
194.44.21.0/24
193.29.203.0/24
193.16.158.0/24
212.3.100.0/24
194.44.99.0/24
194.246.99.0/24
193.201.152.128/25
212.3.98.0/24
193.16.101.0/24
212.3.97.0/24
194.126.204.0/24
194.44.16.0/24
212.3.96.0/24
212.3.113.0/24
195.20.119.0/24
193.201.100.0/24
212.86.230.0/23
194.44.99.0/24
194.44.120.0/22
194.8.51.0/24
213.227.244.0/22
213.227.192.0/20
213.227.192.0/18
213.154.192.0/19
213.227.208.0/21
195.248.160.0/19
212.86.240.0/21
193.178.124.0/22
193.110.176.0/23
193.111.83.0/24
217.151.236.0/22
212.86.224.0/19
195.24.128.0/19
195.85.197.0/24
213.227.240.0/22
193.108.38.0/23
193.108.162.0/23
212.3.116.0/22
212.66.48.0/20
195.225.156.0/22
217.199.224.0/20
193.108.112.0/22
212.66.32.0/20
212.8.32.0/19
193.254.232.0/23
213.227.252.0/22
193.41.172.0/22
213.227.216.0/22
193.41.172.0/22
213.227.216.0/22
194.29.184.0/22
217.24.160.0/20
212.86.248.0/21
193.201.206.0/23
213.227.248.0/22
в итоге работать не хочет.