У меня есть сеть, которая имеет, например, подсеть 172.20.1.0/24. В ней у меня есть одно встроенное устройство, которое пытается получить доступhttp://192.168.1.1, который жестко закодирован. Не внося физических изменений в сеть, я хотел бы, чтобы это устройство получило ответ.
Я попробовал добавить статический маршрут на этом устройстве.
$ route add -host 192.168.1.1 dev eth0
$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.20.1.0 * 255.255.255.0 U 0 0 0 eth0
192.168.1.1 * 255.255.255.255 UH 0 0 0 eth0
и затем настроить один ПК в сети, чтобы он дополнительно имел этот статический IP-адрес. Теперь, со своего устройства я мог пинговать его, но, к сожалению, только если я укажу интерфейс явно:
ping 192.168.1.1 # doesnt work
ping -I eth0 192.168.1.1 # works
Я также не мог получить доступ к веб-серверу на этом ПК. Как я могу дополнительно сделать этот IP-адрес доступным, не вводя, например, маршрутизатор?
решение1
Вам нужно добавить IP-псевдоним 192.168.1.1/24
к тому же интерфейсу, где 172.20.1.0/24
настроен. Ядро автоматически добавит напрямую подключенный маршрут. Затем вам нужно настроить веб-сервер, например nginx
, apache
, , lightttpd
чтобы иметь возможность серверовать веб-страницы наhttp://192.168.1.1