Форум » Программы » 12.6. Команды для работы с сетью » Ответить

12.6. Команды для работы с сетью

CATER: Для меня не ново но кому-то может пригодицо. http://gazette.linux.ru.net/rus/articles/abs-guide/x8782.html 12.6. Команды для работы с сетью Команды, описываемые в этом разделе, могут найти применение при исследовании и анализе процессов передачи данных по сети, а также могут использоваться в борьбе со спамерами. Информация и статистика host Возвращает информацию об узле Интернета, по заданному имени или IP адресу, выполняя поиск с помощью службы DNS. bash$ host surfacemail.com surfacemail.com. has address 202.92.42.236 ipcalc Выводит информацию о заданном узле сети. С ключом -h, ipcalc выполняет поиск имени хоста в DNS, по заданному IP адресу. bash$ ipcalc -h 202.92.42.236 HOSTNAME=surfacemail.com nslookup Выполняет "поиск имени узла" Интернета по заданному IP адресу. По сути, эквивалентна командам ipcalc -h и dig -x. Команда может исполняться как в интерактивном, так и в неинтерактивном режиме, т.е. в пределах сценария. bash$ nslookup -sil 66.97.104.180 nslookup kuhleersparnis.ch Server: 135.116.137.2 Address: 135.116.137.2#53 Non-authoritative answer: Name: kuhleersparnis.ch dig Подобно команде nslookup, выполняет "поиск имени узла" в Интернете. Сравните вывод команды dig -x с выводом команд ipcalc -h и nslookup. bash$ dig -x 81.9.6.2 ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 11649 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0 ;; QUESTION SECTION: ;2.6.9.81.in-addr.arpa. IN PTR ;; AUTHORITY SECTION: 6.9.81.in-addr.arpa. 3600 IN SOA ns.eltel.net. noc.eltel.net. 2002031705 900 600 86400 3600 ;; Query time: 537 msec ;; SERVER: 135.116.137.2#53(135.116.137.2) ;; WHEN: Wed Jun 26 08:35:24 2002 ;; MSG SIZE rcvd: 91 traceroute Утилита предназначена для исследования топологии сети посредством передачи ICMP пакетов удаленному узлу. Эта программа может работать в LAN, WAN и в Интернет. Удаленный узел может быть указан как по имени, так и по IP адресу. Вывод команды traceroute может быть передан по конвейеру утилитам grep или sed, для дальнейшего анализа. bash$ traceroute 81.9.6.2 traceroute to 81.9.6.2 (81.9.6.2), 30 hops max, 38 byte packets 1 tc43.xjbnnbrb.com (136.30.178.8) 191.303 ms 179.400 ms 179.767 ms 2 or0.xjbnnbrb.com (136.30.178.1) 179.536 ms 179.534 ms 169.685 ms 3 192.168.11.101 (192.168.11.101) 189.471 ms 189.556 ms * ... ping Выполняет передачу пакета "ICMP ECHO_REQUEST" другой системе в сети. Чаще всего служит в качестве инструмента диагностики соединений, должна использоваться с большой осторожностью. В случае успеха, ping возвращает код завершения 0, поэтому команда ping может использоваться в условных операторах. bash$ ping localhost PING localhost.localdomain (127.0.0.1) from 127.0.0.1 : 56(84) bytes of data. Warning: time of day goes back, taking countermeasures. 64 bytes from localhost.localdomain (127.0.0.1): icmp_seq=0 ttl=255 time=709 usec 64 bytes from localhost.localdomain (127.0.0.1): icmp_seq=1 ttl=255 time=286 usec --- localhost.localdomain ping statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max/mdev = 0.286/0.497/0.709/0.212 ms whois Выполняет поиск в DNS (Domain Name System). Ключом -h можно указать какой из whois серверов будет запрошен. См. Пример 4-6. finger Возвращает информацию о пользователях в сети. По желанию, эта команда может выводить содержимое файлов ~/.plan, ~/.project и ~/.forward, указанного пользователя. bash$ finger Login Name Tty Idle Login Time Office Office Phone bozo Bozo Bozeman tty1 8 Jun 25 16:59 bozo Bozo Bozeman ttyp0 Jun 25 16:59 bozo Bozo Bozeman ttyp1 Jun 25 17:07 bash$ finger bozo Login: bozo Name: Bozo Bozeman Directory: /home/bozo Shell: /bin/bash Office: 2355 Clown St., 543-1234 On since Fri Aug 31 20:13 (MST) on tty1 1 hour 38 minutes idle On since Fri Aug 31 20:13 (MST) on pts/0 12 seconds idle On since Fri Aug 31 20:13 (MST) on pts/1 On since Fri Aug 31 20:31 (MST) on pts/2 1 hour 16 minutes idle No mail. No Plan. По соображениям безопасности, в большинстве сетей служба finger, и соответствующий демон, отключена. [1] chfn Изменяет некоторые сведения о пользователе, такие как: полное имя, номер кабинета, телефон рабочий и домашний. Которые обычно выводятся командой finger. vrfy Проверка адреса электронной почты. Доступ к удаленным системам sx, rx Команды sx и rx служат для приема/передачи файлов на/из удаленный узел в сети, по протоколу xmodem. Входят в состав пакета minicom. sz, rz Команды sz и rz служат для приема/передачи файлов на/из удаленный узел в сети, по протоколу zmodem. Протокол zmodem имеет некоторые преимущества перед протоколом xmodem, в качестве такого преимущества можно назвать более высокую скорость передачи и возможность возобновления передачи, в случае ее разрыва. Входят в состав пакета minicom. ftp Под этим именем подразумевается утилита и протокол передачи файлов. Сеансы ftp могут устанавливаться из сценариев (см. Пример 17-6, Пример A-5 и Пример A-14). uucp Unix to Unix copy. Это коммуникационный пакет для передачи файлов между Unix серверами. Сценарий на языке командной оболочки -- один из самых эффективных способов автоматизации такого обмена. Похоже, что с появлением Интернет и электронной почты, uucp постепенно уходит в небытие, однако, она с успехом может использоваться в изолированных, не имеющих выхода в Интернет, сетях. cu Call Up -- выполняет соединение с удаленной системой, как простой терминал. Эта команда является частью пакета uucp и, своего рода, упрощенным вариантом команды telnet. telnet Утилита и протокол для подключения к удаленной системе. Протокол telnet небезопасен по своей природе, поэтому следует воздерживаться от его использования. wget wget -- неинтерактивная утилита для скачивания файлов с Web или ftp сайтов. wget -p http://www.xyz23.com/file01.html wget -r ftp://ftp.xyz24.net/~bozo/project_files/ -o $SAVEFILE lynx lynx -- Web браузер, внутри сценариев (с ключом -dump) может использоваться для скачивания файлов с Web или ftp сайтов, в неинтерактивном режиме. lynx -dump http://www.xyz23.com/file01.html >$SAVEFILE rlogin Remote login -- инициирует сессию с удаленной системой. Эта команда небезопасна, вместо нее лучше использовать ssh. rsh Remote shell -- исполняет команду на удаленной системе. Эта команда небезопасна, вместо нее лучше использовать ssh. rcp Remote copy -- копирование файлов между двумя машинами через сеть. Подобно прочим r* утилитам, команда rcp небезопасна и потому, использовать ее в сценариях нежелательно. В качестве замены можно порекомендовать ssh или expect. ssh Secure shell -- устанавливает сеанс связи и выполняет команды на удаленной системе. Выступает в качестве защищенной замены для telnet, rlogin, rcp и rsh. Использует идентификацию, аутентификацию и шифрование информации, передаваемой через сеть. Подробности вы найдете в man ssh. Локальная сеть write Эта утилита позволяет передать текст сообщения на другой терминал (console или xterm). Разрешить или запретить доступ к терминалу можно с помощью команды mesg. Поскольку команда write работает в интерактивном режиме, то, как правило, она не употребляется в сценариях. Mail mail Чтение или передача электронной почты. Этот почтовый клиент командной строки с успехом может использоваться в сценариях. Пример 12-34. Сценарий, отправляющий себя самого по электронной почте #!/bin/sh # self-mailer.sh: Сценарий отправляет себя самого по электронной почте adr=${1:-`whoami`} # Если пользователь не указан, то -- себе самому. # Вызов 'self-mailer.sh wiseguy@superdupergenius.com' #+ приведет к передаче электронного письма по указанному адресу. # Вызов 'self-mailer.sh' (без аргументов) -- отправит письмо #+ пользователю, запустившему сценарий, например, bozo@localhost.localdomain. # # Дополнительно о конструкции ${parameter:-default}, #+ см. раздел "Подстановка параметров" #+ в главе "К вопросу о переменных". # ============================================================================ cat $0 | mail -s "Сценарий \"`basename $0`\" отправил себя сам." "$adr" # ============================================================================ # -------------------------------------------- # Поздравляю! # Этот сценарий запустила какая-то "редиска", #+ и заставила отправить этот текст к Вам. # Очевидно кто-то не знает #+ куда девать свое время. # -------------------------------------------- echo "`date`, сценарий \"`basename $0`\" отправлен "$adr"." exit 0 mailto Команда mailto, похожа на mail, она также отправляет сообщения по электронной почте. Однако, кроме этого, mailto позволяет отправлять MIME (multimedia) сообщения. vacation Эта утилита предназначена для автоматической передачи ответов на электронные письма, например для того, чтобы уведомить отправителя о том, что получатель временно отсутствует. Работает совместно с sendmail и не может использоваться для передачи сообщений через коммутируемые линии (по модему). Notes [1] Демон -- это некий фоновый процесс, не привязанный ни к одной из терминальных сессий. Демоны предназначены для выполнения определенного круга задач либо через заданные промежутки времени, либо по наступлению какого либо события. Слово "демон" ("daemon"), в греческой мифологии, употреблялось для обозначения призраков, духов, чего-то мистического, сверхестественного. В мире Unix -- под словом демон подразумевается процесс, который "тихо" и "незаметно" выполняет свою работу.

Ответов - 0



полная версия страницы