Как определить многоадресный MAC-адрес с PHP5? - PullRequest
1 голос
/ 20 января 2011

Я работаю над инструментом учета в PHP, который подключается к коммутатору CISCO и вставляет MAC-адрес в указанный порт. Я использую Symfony в качестве моей основной платформы php.

Если я пытаюсь вставить многоадресный MAC-адрес в качестве безопасного адреса FastEthernet, коммутатор CISCO отклоняет адрес. Поэтому я пытаюсь создать валидатор, который определяет, является ли данный MAC-адрес многоадресным или нет.

Есть ли кто-нибудь, кто может помочь мне с фрагментом или подсказкой?

1 Ответ

0 голосов
/ 21 января 2011

Попробуйте этот фрагмент:

function isPhysicalAddress($address){
    if (strlen($address) > 17) return 0;

    if ($address == "") return 0;

    if (!eregi("^[0-9A-Z]+(\-[0-9A-Z]+)+(\-[0-9A-Z]+)+(\-[0-9A-Z]+)+(\-[0-9A-Z]+)+(\-[0-9A-Z]+)$", $address)) return 0;

    $arr=explode("-",$address);

    if (strlen($arr[0]) != 2) return 0;
    if (strlen($arr[1]) != 2) return 0;
    if (strlen($arr[2]) != 2) return 0;
    if (strlen($arr[3]) != 2) return 0;
    if (strlen($arr[4]) != 2) return 0;
    if (strlen($arr[5]) != 2) return 0;

    return 1;
}

Найдено здесь .

...