Ответ 1
От Драйверы устройств Linux 3:
IFF_UP Этот флаг доступен только для чтения для драйвера. Ядро включает его, когда интерфейс активен и готов к передаче пакетов.
...
IFF_RUNNING
Этот флаг указывает, что интерфейс запущен и работает. Это в основном для совместимости с BSD; ядро мало использует его. Наиболее сетевым драйверам не нужно беспокоиться о IFF_RUNNING.
Копаясь немного глубже, кажется, что существует одна существенная разница:
IFF_RUNNING
должен отражать операционный статус на сетевом интерфейсе, а не на его административном. Например, для интерфейса Ethernet может быть добавлен UP
администратором (например, ifconfig eth0 up
), но он не будет считаться рабочим (т.е. RUNNING
в соответствии с RFC2863), если кабель не подключен.