Конвертированная форма ответа от @Gilles, позволяющая использовать синтаксис, более похожий на cp (мой сценарий Bash до смешного элементарный, поэтому я не мог понять как упаковать подстановку пути в "-exec {}")
#/usr/bin/bash
if [ $# -ne 2 ] ; then echo "Args: <original tree> <new tree of symlinks>" ; exit 1; fi
mkdir -p "$2"
srclen=${#1}
find "$1" | while read line
do
sub=${line:$srclen}
if [ -d "$line" ]
then
mkdir "$2$sub"
else
ln -s "$1$sub" "$2$sub"
fi
done
IP-адрес может быть назначен ответственным устройством в локальной сети, например сервером или маршрутизатором, с использованием вызываемого DHCP . (Это определено в RFC 2131 и расширено как минимум в RFC 2132 .)
Устройство также может самостоятельно -настроить свой адрес и избежать необходимости в DHCP. Команда ip
, которую вы продемонстрировали, делает именно это.
Обратите внимание, что в этом сценарии есть два основных предостережения
Наконец, вы спросили, почему сервер должен -конфигурироваться самостоятельно. Быстрый ответ здесь заключается в том, что сам DHCP-сервер должен знать свой собственный IP-адрес, прежде чем он сможет начать обслуживать запросы. Другими возможностями являются сетевые маршрутизаторы и центральные серверы аутентификации (, контроллер домена в мире Active Directory Windows или сервер LDAP в мире UNIX/Linux ).
Присвоение себе IP-адреса упрощает определение IP-адреса компьютера. Маршрутизаторы будут делать это с помощью DHCP или зарезервированного адреса DHCP на основе mac-адреса.
Чистый DHCP назначит любой заданный неиспользуемый адрес в диапазоне IP-адресов. Это не идеально, если вы используете серверы/службы в нескольких системах.
Зарезервированный DHCP IP-адрес останется с любым MAC-адресом. Это идеально, но обременительно записывать или иметь целевой компьютер в сети, чтобы добавить его в зарезервированные списки. Кроме того, если маршрутизатор умирает, вам придется делать это снова и снова.
Назначение собственного IP-адреса удобно тем, что это можно сделать с самого компьютера. Он останется с компьютером, если вы переместите его в другую сеть или в другую. Недостатком является то, что если ваш адрес уже занят, сетевой интерфейс не будет подключен к сети, пока конфликт адресов не будет урегулирован. Однако, если вы назначите ему IP-адрес за пределами области DHCP и сделаете примечание, чтобы не назначать другим компьютерам в сети этот адрес, у вас не будет этой проблемы.
Большая часть сетевого трафика до -маршрутизации достигает всех интерфейсов и/или отвечает интерфейс с IP-адресом, указанным в заголовке. Таким образом, да, пакеты будут попадать на интерфейс eth0, но ответит ли он или будет ли он работать в этой сети, зависит от того, верны ли IP-адрес и маска подсети, а также от настройки полного или полудуплексного режима и т. Д. Большинство настроек по умолчанию достаточно хороши для большинства домашних или несложных сетей.
На самом деле, все хосты в сети действительно заявляют о своих собственных IP-адресах. Всегда!
На стороне локальной сети маршрутизатор имеет IP-адрес в определенном диапазоне (, например. 192.168.9.x )и если маршрутизатор получает пакет байтов, скажем, для 192.168.9.12, маршрутизатор перенаправляет его на свой физический порт с диапазоном IP-адресов (192.168.9.0/24 )сконфигурировано так, чтобы оно соответствовало адресу назначения. В том порту,он вещает в локальной сети:«Какой хост требовать IP-адрес 192.168.9.12?" . И любой хост, сетевая карта которого настроена на иметь этот конкретный IP-адрес будет отвечать, тем самым заявляя адрес. Если все ну, есть ровно один хост, который на это претендует, и роутер отправит пакет данных на этот хост.
Эта широковещательная рассылка «у кого есть IP-адрес x.x.x.x» и заявление об этом путем ответа: происходит на более низком уровне и работает только в локальной сети LAN (). Этот протокол называется "ARP" (Протокол разрешения адресов)
Другими словами:
Адрес, на который маршрутизатор отправляет пакет данных, на этом нижнем уровне: фактически MAC-адрес сетевой карты (NIC )хоста, который требует IP-адрес. Он делает это, отвечая на запрос ARP -, передаваемый маршрутизатором.
Таким образом, хост сам решает, какой IP-адрес он будет использовать. претендовать на наличие в сети.
В сетях, превышающих несколько хостов, будет утомительно поддерживать отслеживание того, какой IP-адрес должен использоваться каким хостом. А затем представьте, что вы редактируете файл на всех компьютерах, разрешенных в сети, чтобы указать только его IP-адрес!
Кроме того, если два (или более )хоста претендуют на один и тот же IP-адрес, оба будут иметь серьезная проблема с сетью! Вот почему очень практично иметь центральный служба в локальной сети, которая отслеживает, какой MAC-адрес можно использовать какой IP-адрес. Это называется "DHCP" (Протокол динамической конфигурации хоста ), который также можно использовать для информирования хостов многих других параметров конфигурации в локальной сети.
Протокол DHCP также работает на том же более низком уровне, что и протокол ARP. Когда хозяин настраивает сетевую карту (сетевой карты ), чаще всего во время загрузки, она передает "Какой IP-адрес я могу использовать в этой сети?" .Это делается DHCP клиентское программное обеспечение. Поскольку это широковещательная рассылка, ее получают все хосты, но только DHCP. сервер ответит, надеюсь, упомянув уникальный IP-адрес, свою сетевую маску, адрес шлюза (маршрутизатора )и, возможно, другие вещи. Хозяин держит это в памяти, зная, что он может безопасно претендовать на этот IP-адрес в сети в течение некоторого времени.
Но это работает только потому, что хосты сотрудничают , запрашивая у сервера DHCP -IP-адрес для использования. В конечном счете всегда хосты решают, какой IP-адрес им претендовать....
В то время как другой ответ (s )описывает, почему существует статическая IP-адресация, я хочу ответить на вашу часть вопроса о том, как это работает.
Здесь вам не хватает ARP . Представьте себе частную сеть 172.17.0.0/16. Один из ваших клиентов «присвоил себе» статический IP-адрес 172.17.0.12. Второй клиент 172.17.0.42 хочет связаться с 172.17.0.12. После ARP 172.17.0.42 отправляет широковещательную рассылку. Он эффективно кричит повсюду: «У кого есть IP-адрес 172.17.0.12?». 172.17.0.12 отвечает и связь устанавливается. Обратите внимание, что если есть два клиента, которые утверждают, что имеют один и тот же IP-адрес, возникает хаос.