C Программа для поиска UP и DOWN машин. - PullRequest
0 голосов
/ 25 февраля 2012

Предположим, у меня есть сценарий, подобный приведенному ниже:

Существует около 225 компьютеров, имеющих следующий диапазон IP-адресов и имен хостов: -

PC-LAB         IP ADDRESS RANGE       HOSTNAME RANGE
PC-LAB1  10.11.2.01 -   10.11.2.30  ccl1pc01 - ccl1pc30
PC-LAB2  10.11.3.01 -   10.11.3.30  ccl2pc01 - ccl2pc30
PC-LAB3  10.11.4.01 -   10.11.4.45  ccl3pc01 - ccl3pc45
PC-LAB4  10.11.5.01 -   10.11.5.50  ccl4pc01 - ccl4pc50
PC-LAB5  10.13.6.01 -   10.13.6.65  ccl5pc01 – ccl5pc65

Я хочу написать программу ( в C / C ++ ), который примет указанные выше IP-адреса и диапазоны имен хостов в качестве входных данных и создаст два отдельных файла: один с 225 записями IP-адресов, а другой с 225 записями имен хостов.Затем программа определит, какие из этих машин вверх , а какие down , а затем создаст два файла, один из которых будет содержать hostname и IP-адреса систем, которые UP , а другие ВНИЗ .

Например

FILE1.down
Hostname   IP address
ccl1pc10   10.8.2.10
ccl5pc25   10.11.5.25

Примечание : Если какая-либо команда ubuntu упрощает эту работу ... мы можем использовать это в программе точно .. !!

Ответы [ 3 ]

2 голосов
/ 25 февраля 2012

Выезд Nmap .Возможно, вам потребуется создать небольшую оболочку для обработки ввода и вывода в нужном вам формате, но она должна делать именно то, что вам нужно.

2 голосов
/ 27 июля 2012

Посмотрите на fping

Запустите эту команду, откиньтесь на спинку кресла и расслабьтесь:

fping ccl{1..6}pc{01..60} 

это выведет список

  • Все хосты, которые имеют DNS-имя / IP-запись и работают
  • Все хосты, которые имеют DNS-имя / IP-запись, но не работают
  • Все хосты, которые не находятся в DNS (я думаю,Вы можете игнорировать их)

С уважением

0 голосов
/ 25 февраля 2012

Является ли это домашним заданием, т.е. нужно ли делать это программно на языке C?

В противном случае существует дюжина уже существующих платформ мониторинга, причем несколько уже в Ubuntu: munin, nagios, zabbix, ...

...