Как работает это правило фильтра регулярных выражений Squid? - PullRequest
0 голосов
/ 10 марта 2009

На нашем сервере Squid администратор установил новое правило регулярных выражений:

^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+

Я знаю, что это означает IP-адрес, но позволяет пропустить все URL-адреса, остановлено только пингование внешнего адреса. Также программное обеспечение для туннелирования, такое как UltraSurf, перестало подключаться к серверу. Skype также не подключается.

Пожалуйста, объясните, как это работает! Спасибо.

Ответы [ 2 ]

1 голос
/ 10 марта 2009

Я не уверен в вашей конкретной проблеме с сервером Squid, но вот что делает регулярное выражение:

[0-9]+ означает «любую цифру один или несколько раз», поэтому она соответствует строке, которая начинается с цифры один или несколько раз, за ​​которой следует точка, затем цифра один или несколько раз, а затем точка. за которым следует цифра один или несколько раз, затем точка, затем цифра один или несколько раз ... затем что-нибудь еще. По сути, он соответствует любому IP-адресу, поэтому ничего не отфильтровывается. Это также будет соответствовать вещам, которые даже не являются действительными IP-адресами, такими как 123456.123456.123456.123456 или 1.1.1.1 или 125.252.252.252asdf.

0 голосов
/ 10 марта 2009

Паоло хорошо объяснил значение регулярного выражения! Как уже упоминалось, используемое в настоящее время регулярное выражение слишком слабое (или, я бы сказал, слишком ограничительное!)

Если вы хотите, чтобы Regex намного лучше соответствовал IP-адресам, см. на этой странице .

...