Всем привет.
Назрел такой вопрос. Я конечно понимаю, что многим покажется непрактично. Или ещё что-то, но у меня появилась необходимость.
я понимаю что нужно в правила фаервола добавить к IP адресу ещё и MAC-адрес. Вопрос как.
Вообщем, посоветовшись, мне подсказали ковырять nofire.pl
Вскрыл, почитал, попытался поанализировать, но мало что понял. Вывожу свои размышления:
# ==================
# Разрешение доступа
sub Allow
{
my $p=$_[0];
my($auth,$dop_param,$i,$id,$ip,$mid,$n,$num,$num1,$num2,$opt,$options);
my($paket,$pipe2,$pipe_in,$pipe_out,$speed2,$speed_in,$speed_out);
$ip=$p->{ip};
$id=$p->{id}; # id текущей записи (по таблице users)
$num=$p->{num}; # виртуальный уникальный id текущей записи
$mid=$p->{mid}; # id основной записи (по таблице users)
$auth=$p->{auth}; # режим авторизации (on,off,ong)
$paket=$p->{paket};
$speed2=$p->{speed2}; # альтернативная скорость, указанная в пакете
$options=$p->{options}; # модификаторы скорости
$main_num=$p->{main_num}; # виртуальный уникальный id основной записи
$speed_in=$p->{speed_in}; # скорость к клиенту, указанная в пакете
$speed_out=$p->{speed_out};
$dop_param=$p->{dop_param}; # дополнительные параметры учетки клиента
$plan_flags=$p->{plan_flags}; # флаги пакета тарификации
($num1,$num2)=&Get_Ipfw_Num($num); # номера правил ipfw `от клиента` и `на клиента`
$Need_Del_Rule{$ip}=0; # признак, что для $ip персонального правила не создано,
# 0 останется если все будет оформлено через таблицы
&Add_Tbl_Rule(0,$ip);
тут описываются переменные и последнее добавляет правило.
если я правильно понимаю, то в переменные мы дописываем что-то вроде:
my($mac_d);
$mac_d=$p->{mac};
и в полледнюю строчку дописываем, чтобы получилось так:
&Add_Tbl_Rule(0,$ip,$mac_d);
в этом случае, если я правильно понял, добавляется mac-адрес в таблицу маршрутизации, и вместо только ip-адреса будет ещё и mac-адрес.
Подскажите друзья, я правильно мысли или нет. Если нет, помогите решить проблемку эту.
Не спрашивайте, зачем это надо, mac-адрес же легко подменить.
Просто надо это. Народ странный немного, а в нашем городе ещё и тупой. Не знают что mac-адрес менять можно, а уж тем более КАК, они вообще не представляют)))
Заранее благодарен всем!
P.S. нужно IP+MAC без авторизатора.