У меня уже есть адрес loopback 127.0.0.1, который соответствует хосту в локальной сети loopback 127.0.0.0/8. Как мне создать второй локальный хост loopback с адресом 127.0.0.2? Кто-нибудь знает точную команду?
решение1
1) Можно добавить его временно, используя команду ниже
ifconfig lo:40 192.168.40.1 netmask 255.255.255.0 up
2) Добавьте их на постоянной основе в /etc/network/interfaces
auto lo lo:10 lo:20
iface lo inet loopback
iface lo:10 inet static
address 192.168.10.1
netmask 255.255.255.0
network 192.168.10.0
iface lo:20 inet static
address 192.168.20.1
netmask 255.255.255.0
network 192.168.20.0
решение2
Хотя это, вероятно, не скоро нас покинет, ifconfig
это "старый" способ делать вещи, и он заменяется командой ip
. Способ сделать это ip
:
ip addr add 192.168.40.1/32 dev lo
Больше нет необходимости в виртуальных интерфейсах (т. е. lo:10
и т. п., которые использовал Мукеш), но вы все равно можете их использовать, если захотите, например
ip addr add 192.168.40.1/32 dev lo label lo:40
обратите внимание, что я использую /32
сетевые маски, потому что lo
это специально, так как это будет отвечать на адрес, принадлежащий сети, настроенной на нем. Так что если вы добавите, 192.168.40.1/24
это будет фактически отвечать на любой 192.168.40.*
адрес, а не только.1
С этой целью, для вашего исходного примера 127.0.0.2
, он фактически уже отреагирует на это, потому что он попадает в него, 127.0.0.0/8
так что вам вообще ничего не нужно делать, чтобы получить этот конкретный адрес.
Кроме того, будьте осторожны с адресами на обратной связи, поскольку ядро будет знать, что этот адрес находится на хосте, и будет отвечать на запросы этого адреса также на физических интерфейсах.
решение3
Протестировано на моем Raspberry Pi, который работает на Raspbian, Debian, так что это должно работать и на Debian. Я создал /etc/network/interfaces.d/lo
со следующим содержимым:
auto lo
iface lo inet loopback
iface lo inet static
address 127.0.0.2/24
broadcast 0.0.0.0
В Debian у вас уже должны быть первые две строки в /etc/network/interfaces
, поэтому вы можетедобавьте оставшиеся строки туда. На Raspbian первые две строки, похоже, были неявными и не нужными, но с ними тоже работало.
Примечание: Чтобы использовать interfaces.d
каталог, вам придется добавить следующее, /etc/network/interfaces
если этого еще не произошло:
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d
решение4
У меня lo:
не сработало, но lo
в Ubuntu сработало. Я сделал следующее:
sudo ifconfig lo 127.0.0.2 netmask 255.0.0.0 up
sudo ifconfig lo 127.0.0.3 netmask 255.0.0.0 up
А затем нажатие ifconfig
-a выведет подробную информацию.