Перейти к содержимому
Калькуляторы

arprequest: cannot find matching address

Последнее время падает border.

стоит freebsd 8.1 на флешке в режиме read only.

падает почти каждкую неделю.

В эти моменты не пингуется не один интерфейс.

И на экран постоянно выводит сообщение

arprequest: cannot find matching address

Помогает только перезагрузка.

Если кто сталкивался с подобным, подскажите почему так происходит и как решили эту проблему?

Изменено пользователем Amazing

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

if_ether.c

/*
* Broadcast an ARP request. Caller specifies:
*    - arp header source ip address
*    - arp header target ip address
*    - arp header source ethernet address
*/
void
arprequest(struct ifnet *ifp, struct in_addr *sip, struct in_addr  *tip,
    u_char *enaddr)
{
    struct mbuf *m;
    struct arphdr *ah;
    struct sockaddr sa;

    if (sip == NULL) {
        /* XXX don't believe this can happen (or explain why) */
        /*
         * The caller did not supply a source address, try to find
         * a compatible one among those assigned to this interface.
         */
        struct ifaddr *ifa;

        TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) {
            if (!ifa->ifa_addr ||
                ifa->ifa_addr->sa_family != AF_INET)
                continue;
            sip = &SIN(ifa->ifa_addr)->sin_addr;
            if (0 == ((sip->s_addr ^ tip->s_addr) &
                SIN(ifa->ifa_netmask)->sin_addr.s_addr) )
                break;  /* found it. */
        }
        if (sip == NULL) {  
            printf("%s: cannot find matching address\n", __func__);
            return;
        }
    }

 

Оно не может найти ипв4 адреса на сетевом интерфейсе для данного ипв4 адреса чтобы послать запрос.

Посмотрите что выдаёт ifconfig когда такое происходит.

Какие ещё сообщения в логах, до этих?

Как вариант можно сделать патч для себя, чтобы туда подставлялся 0.0.0.0 если ничего не найдено, вместо сообщения об ошибке, теоретически должно работать.

 

Можно ещё попробовать ifconfig down и потом up для интерфейсов.

Либо rc.d скриптом рестартануть сеть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.