Статический файл для сопоставления IP с MAC-адресами

Дополнительное примечание к ответу @Gilles.

Как сказал Жиль: Скобки всегда начинают подоболочку.

Однако числа, которые есть в такой суб-оболочке, могут повторяться:

$ (echo "$BASHPID and $$"; sleep 1)
2033 and 31679
$ (echo "$BASHPID and $$"; sleep 1)
2040 and 31679
$ (echo "$BASHPID and $$"; sleep 1)
2047 and 31679

Как видите, $$ продолжает повторяться, и это как и ожидалось, потому что (выполните эту команду, чтобы найти правильный man bash строка):

$ LESS=+/'^ *BASHPID' man bash

BASHPID
заменяется на идентификатор текущего процесса bash. Это отличается от $$ при определенных обстоятельствах, таких как подоболочки, которые не требуют повторной инициализации bash.

То есть: если оболочка не инициализирована повторно, $$ остается прежним.

Или вот так:

$ LESS=+/'^ *Special Parameters' man bash

Специальные параметры
$ Расширяется до идентификатора процесса оболочки. В подоболочке () он расширяется до идентификатора процесса текущей оболочки, а не до подоболочки.

$$ - это идентификатор текущей оболочки (не подоболочки).

0
01.03.2019, 16:06
1 ответ

Наличие разных MAC-адресов для определенных IP-адресов как раз и является причиной таких ошибок, как «ARP не работает» или «Ping не работает».

Причина :Управляемые Ethernet-коммутаторы могут быть настроены для реализации «предела переключения» для MAC, которые слишком часто меняют свой порт. Таким образом, в вашем случае дублирующийся IP-адрес может вызвать такую ​​меру. Неуправляемые коммутаторы могут иметь ограничение скорости -для переключения сами по себе.

У вас есть эти MAC-адреса на отдельных хостах или на отдельных картах?

Обязательное использование одного IP-адреса только на одном узле/сетевой плате предотвратит появление этих ошибок.

0
28.01.2020, 03:57

Теги

Похожие вопросы