Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Constantin Stefanov                  2:5020/400     11 Dec 2003  12:40:21
 To : Oleg V. Naumann
 Subject : Re: Странный пинг.
 -------------------------------------------------------------------------------- 
 
 Oleg V. Naumann wrote:
 
 >  CS> icmp_bmcastecho="NO"    # respond to broadcast ping packets
 >  
 >     А вот кто мне обьяснит такое:
 > 
 > [root@gate]~# ifconfig rl0
 > rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
 >      inet 172.16.0.2 netmask 0xffffff00 broadcast 172.16.0.255
 >      inet 192.168.7.1 netmask 0xffffff00 broadcast 192.168.7.255
 >      inet 10.255.255.1 netmask 0xffffff00 broadcast 10.255.255.255
 >      ether 00:02:44:47:a7:16
 >      media: Ethernet autoselect (100baseTX <full-duplex>)
 >      status: active
 > [root@gate]~# ping 192.168.7.255
 > PING 192.168.7.255 (192.168.7.255): 56 data bytes
 > 64 bytes from 192.168.7.1: icmp_seq=0 ttl=64 time=0.120 ms
 > 64 bytes from 192.168.7.1: icmp_seq=0 ttl=64 time=0.629 ms (DUP!)
 > 64 bytes from 192.168.7.1: icmp_seq=1 ttl=64 time=0.099 ms
 > 64 bytes from 192.168.7.1: icmp_seq=1 ttl=64 time=0.619 ms (DUP!)
 > ^C
 > --- 192.168.7.255 ping statistics ---
 > 2 packets transmitted, 2 packets received, +2 duplicates, 0% packet loss
 > round-trip min/avg/max/stddev = 0.099/0.367/0.629/0.257 ms
 > [root@gate]~# uname -sr
 > FreeBSD 4.9-STABLE
 > [root@gate]~# sysctl net.inet.icmp.bmcastecho
 > net.inet.icmp.bmcastecho: 0
 
 А если с другой машины пингнуть броадкастом - тоже ответит?
 
 Сколь я смог понять, вот кусок /usr/src/sys/netinet/ip_icmp.c, который
 за это отвечает.
 ---------------------------------------------------
         case ICMP_ECHO:
                 if (!icmpbmcastecho
                     && (m->m_flags & (M_MCAST | M_BCAST)) != 0) {
                         icmpstat.icps_bmcastecho++;
                         break;
                 }
                 icp->icmp_type = ICMP_ECHOREPLY;
 #ifdef ICMP_BANDLIM
                 if (badport_bandlim(BANDLIM_ICMP_ECHO) < 0)
                         goto freeit;
                 else
 #endif
                         goto reflect;
 ---------------------------------------------------
 Вероятно, для локально сгенерированных пакетов не устанавлюваются флаги
 M_MCAST и M_BCAST (я так понял, что они устанавливаются по типу адреса
 назначения канального уровня, а тут пакет через него не проходит,
 впрочем, могу и ошибаться). А вот почему их два возвращается - это я
 совсем не могу понять.
 
 В любом случае, send-pr.
 
 -- 
 Константин Стефанов
 
 --- ifmail v.2.15dev5.1
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Странный пинг.   Constantin Stefanov   10 Dec 2003 12:45:54 
 Re: Странный пинг.   Oleg V. Naumann   11 Dec 2003 12:23:44 
 Re: Странный пинг.   Constantin Stefanov   11 Dec 2003 12:40:21 
Архивное /ru.unix.bsd/65779626ea72.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional