|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.06.2014, 13:09 | #1 |
Форумчанин
Регистрация: 10.02.2009
Сообщений: 226
|
вложенные массивы, вытащить ключи как?
Здраствуйте.
Имеем: свичи Длинк, включенные звездой, один в роли аплинка, остальные звездой от него. Задача: вычислить, какой коммутатор какими портами куда скоммутирован. Т.е. этакая мелкая карта сети, для "лень двигатель прогресса". Для этой задачи выбираю опрос по SNMP, мибы нарыты в просторах. 1. Стучимся в первый из заданного диапазона ип свич. 2. получаем от него инфу: а. мак адрес собственно его, б. какие порты (26--28) в каком состоянии находятся (Up--Down) в. какие маки в каких портах(26--28) светятся в нем г. конвертируем полученные маки в HEX, т.к. длинки по другому и не умеют.. Данный пункт 2 проделываем с каждым девайсом. 3. Имея полученные маки все, спрашиваем в каждом же свиче в каком порту светятся "чужие" маки, т.е. аналог телнета sh arpentry Ну и строим методом сравнения кто куда подключен... Что получилось: 1. работает 2. работает т.е. я инфу то по циклу получаю от каждого свича. Но т.к. я еще не писал серьезных вещей потому и застрял на пункте, как вытащить отдельно для каждого свича и запомнить информацию то... Я понимаю что весь опрос в цикле и его значения надо загнать в массив и далее делать с ним (массивом) что угодно, но блин не могу сообразить никак.. Т.е. принцип работы таков: Иду в свич Получаю инфу Иду в следующий Получаю инфу.. ...... А вот теперь взять бы все что вытащено сразу и анализировать.
следи за собой. Будь осторожен.
Не забывай свой первый "hello world". |
17.06.2014, 13:09 | #2 |
Форумчанин
Регистрация: 10.02.2009
Сообщений: 226
|
Немного кода для опроса:
Код:
[HTML].1.3.6.1.2.1.17.7.1.2.2.1.2.126.216 .254.227.58.115.228 array(4) { [0]=> string(12) "192.168.1.22" [1]=> string(16) " "QBM51D8003183"" [2]=> string(17) "D8-FE-E3-3A-74-44" [3]=> string(21) "216.254.227.58.116.68" } ----- "QBM51D8003183"----- 192.168.1.23 . "DES-1210-28/ME _S/N: "QBM51D8003181" MAC--> D8-FE-E3-3A-73-E4 hex_mac = 216.254.227.58.115.228 Port 26 is Up Port 27 is Down Port 28 is Up ===.1.3.6.1.2.1.17.7.1.2.2.1.2.126. 216.254.227.58.116.20 array(4) { [0]=> string(12) "192.168.1.23" [1]=> string(16) " "QBM51D8003181"" [2]=> string(17) "D8-FE-E3-3A-73-E4" [3]=> string(22) "216.254.227.58.115.228" } ----- "QBM51D8003181"----- 192.168.1.24 . "DES-1210-28/ME _S/N: "QBM51D8003182" MAC--> D8-FE-E3-3A-74-14 hex_mac = 216.254.227.58.116.20 Port 26 is Down Port 27 is Down Port 28 is Up/HTML] помощь треба, ежели обчеству не в тягость
следи за собой. Будь осторожен.
Не забывай свой первый "hello world". |
17.06.2014, 13:12 | #3 |
Форумчанин
Регистрация: 10.02.2009
Сообщений: 226
|
собственно отсюда:
Код:
Не откажите в любезности товарищи. А то очень уж полезная штука вырисовывается.. Поясню что выводится на примере строки: array(4) { [0]=> string(12) "192.168.1.19" [1]=> string(16) " "QBM51D8002519"" [2]=> string(17) "D8-FE-E3-39-F7-C4" [3]=> string(22) "216.254.227.57.247.196" } ----- ip adress свича; серийник; мак-адрес свича; его(мак-адресс) конвертация в HEX, чтоб использовать далее. Т.е. цикл проходит успешно, но блин как выдернуть ВСЕ что получалось?
следи за собой. Будь осторожен.
Не забывай свой первый "hello world". Последний раз редактировалось bush007; 17.06.2014 в 13:17. |
18.06.2014, 09:38 | #4 |
Форумчанин
Регистрация: 10.02.2009
Сообщений: 226
|
опа...
тему закрыть, решение нашел. (тут как принято в интернетах не должно быть самого решения, но я не такой ) Итак... в месте, где мы получаем необходимое значение (в этом примере мак-адрес устройства): Код:
Код:
Код:
следи за собой. Будь осторожен.
Не забывай свой первый "hello world". |
18.06.2014, 09:45 | #5 |
Форумчанин
Регистрация: 10.02.2009
Сообщений: 226
|
Объясню, пока сам не забыл, строки кода:
Код:
Код:
следи за собой. Будь осторожен.
Не забывай свой первый "hello world". |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вложенные циклы + массивы | kuy | Паскаль, Turbo Pascal, PascalABC.NET | 19 | 09.10.2013 21:32 |
Массивы, авторизация через ВК, как вытащить данные? | Delphinchik | PHP | 0 | 23.01.2012 19:12 |
Массивы. Вложенные циклы | Usefur | Помощь студентам | 4 | 27.12.2010 22:48 |
двумерные массивы.вложенные циклы | Горящее сердце | Помощь студентам | 2 | 26.05.2010 20:29 |
массивы и вложенные циклы | cobrita24 | Помощь студентам | 10 | 03.12.2009 15:22 |