У меня медленный интернет-канал (1024 КБИТ / с), которым можно поделиться между 30 пользователями. Чтобы контролировать трафик, я установил базовый прокси-сервер с iptables. Журналы и пакеты, захваченные с помощью tcpdump, показывают, что существует много соединений на один IP-адрес. Итак, я хочу ограничить http-соединения, добавив эту строку:
% iptables -A INPUT -p tcp --syn --dport 80 -d !$SQUID_SERVER \
-m connlimit --connlimit-above 5 -j REJECT --reject-with tcp-reset
затем я тестирую это с помощью:
% netstat -nt | cut -c 40- | cut -d: -f1 | sort | uniq -c | sort -n
и это кажется не работает:
3 10.2.13.32
3 10.2.13.91
4 10.2.13.37
5 31.13.72.55
**6** 90.84.59.72
**8** 10.2.13.249
1 108.160.161.158
1 199.7.52.72
1 208.53.158.108
**14** 10.2.13.80
**19** 10.2.13.79
2 178.255.83.1
Извините за поздний ответ, я добавил "-d! $ SQUID_SERVER", чтобы разрешить запросы, поступающие с прокси-сервера. Моя цель - ограничить количество веб-сайтов, загружаемых на IP- или MAC-адрес.
netstat -nt | grep УСТАНОВЛЕН | вырезать -c 40- | вырезать -d: -f1 | сортировать | uniq -c | sort -n
1 10.2.13.92
1 107.21.36.27
1 108.160.160.165
1 173.194.39.24
1 173.194.69.102
1 173.254.28.70
1 192.168.1.3
1 199.47.218.151
1 199.47.219.149
1 213.154.65.67
1 23.23.143.97
1 31.7.61.11
1 64.4.34.40
1 64.4.61.44
1 69.25.24.23
1 80.190.166.100
1 90.84.50.154
1 90.84.50.161
1 90.84.50.168
1 90.84.50.177
1 90.84.53.41
2 10.2.13.71
2 10.2.13.75
2 10.2.13.82
2 10.2.13.91
2 108.160.160.159
2 173.194.69.156
2 87.248.105.221
2 90.84.50.187
3 173.194.69.113
4 173.194.69.132
5 10.2.13.227
5 10.2.13.229
6 213.186.33.17
13 10.2.13.228
15 10.2.13.89
30 10.2.13.78
вы уверены, что эти подключения не направлены на squid и разрешены правилом -d! $ СЕРВЕР СКВИДОВ ?
Пожалуйста, лучше вставьте полные строки.