Загрузка через маршрутизатор Debian с PXE-СЕРВЕРА в другой сети

Загрузка через маршрутизатор Debian с PXE-СЕРВЕРА в другой сети

Мне понадобится ваша помощь. Я настроил сеть с Debian 9.3.0.

Целью этого проекта является то, что я могу загружать клиентов в сети B. Поэтому я настроил маршрутизатор с двумя сетевыми картами и настроил их на

Сеть A:-------------DebianRouter:-------Сеть B

40.4.200.0/24----------10.5.200.254/24-----10.5.200.0/24

dhcp.conf-->

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).



# The loopback network interface
auto lo
iface lo inet loopback
#test
#Member Network A
auto enp0s25
iface enp0s25 inet static
   address 40.4.200.252
   netmask 255.255.255.0
   gateway 40.4.200.254

#My NEW NETWORK B
auto enp16s0
iface enp16s0 inet static
   address 10.5.200.254
   netmask 255.255.255.0

после этого я настрою isc-dhcp-server и настрою его DHCP, также получив 10.5.200.254.

# dhcpd.conf
#
# Sample configuration file for ISC dhcpd

INTERFACES="enp16s0";

ddns-update-style none;

option domain-name "peoplenetde.org";
option domain-name-servers 40.4.200.202, 172.29.1.10;

default-lease-time 86400 ;
max-lease-time 172800;

authoritative;

log-facility local7;

#option 66
option tftp-server-name "40.4.200.218";

#option67
option bootfile-name "smsboot\x64\wdsmgfw.efi";

allow booting;
allow bootp;

subnet 10.5.200.0 netmask 255.255.255.0 {
    option domain-name-servers 40.4.200.202, 179.29.1.10;
    option broadcast-address 10.5.200.255;
    option subnet-mask 255.255.255.0;
    option routers 10.5.200.254;
    range 10.5.200.100 10.5.200.200;


    group {
            next-server 40.4.200.218;
            filename "smsboot\x64\wdsmgfw.efi";


            host ubuntu {
                    hardware ethernet 08:00:07:26:c0:a5;
                    fixed-address 10.5.200.10; }
            }
    }

поэтому я хотел сначала сделать это с именем файла, прежде чем переходить к ретрансляционному агенту.

это не сработало, каждый раз "PXE-E32:tftp open timeout" iptables -L говорил мне, что все разрешено.

После долгих исследований, которые так и не помогли, я попробовал напрямую с помощью ретрансляционного агента.

Однако пинг от клиента в сети B к PXE-серверу в сети A прошел успешно.

поэтому я решил обратиться к ретранслятору.

Я установил IP сервера (40.4.200.218) и интерфейс enp16s0 по умолчанию

conf и удалил опцию filename в dhcp.conf,

опция следующего сервера все еще находится в конфигурации.

но теперь, если я хочу сделать ping куда угодно, на клиенте в сети B, он сообщает, что сеть недоступна.

А если я хочу загрузиться по сети, то ошибка: PXE-E52: proxyDHCP offers were receives. Предложения DHCP не были получены, я не знаю, что делать..

если вам нужны какие-либо настройки или что-то еще, просто напишите, и я опубликую. Надеюсь, вы сможете мне помочь.

Кстати, PXE/tftp смонтирован на SCCM и также управляется им.

Возможно, агент ретрансляции использует любой DHCP-сервер, поскольку у клиента в сети B больше нет IP-адреса.

чего я не хочу, я просто хочу, чтобы он ретранслировал BOOTP.

ИЗМЕНЕНИЕ 2: 27.02.2018

# dhcpd.conf
#
# Sample configuration file for ISC dhcpd

INTERFACES="enp16s0";


option domain-name "Debiann.com";
option domain-name-servers 10.5.200.254;

default-lease-time 86400 ;
max-lease-time 172800;

authoritative;

log-facility local7;

#option 66
option tftp-server-name "40.4.200.218";

#option67


allow booting;
allow bootp;

subnet 10.5.200.0 netmask 255.255.255.0 {
       option domain-name-servers 10.5.200.254;
       option broadcast-address 10.5.200.255;
       option subnet-mask 255.255.255.0;
group {
            next-server 40.4.200.218;



            host ubuntu {
                    hardware ethernet 08:00:07:26:c0:a5;
                    fixed-address 10.5.200.10; }
            }
       }

поэтому DHCP в «SCCM-Network» отключен, я установил dhcp-relay в своей новой сети, conf:

# Defaults for isc-dhcp-relay initscript
# sourced by /etc/init.d/isc-dhcp-relay
# installed at /etc/default/isc-dhcp-relay by the maintainer scripts

#
# This is a POSIX shell fragment
#

# What servers should the DHCP relay forward requests to?
SERVERS="40.4.200.218"

# On what interfaces should the DHCP relay (dhrelay) serve DHCP requests?
INTERFACES="enp16s0"

# Additional options that are passed to the DHCP relay daemon?
OPTIONS=""

если я запускаю ПК, нажимаю F12 для сетевой загрузки: он не получает DHCP, поэтому я получаю:

PXE-E53: No boot filename received

Затем я возвращаюсь в dhcp.conf и снова добавляю 2 параметра с именем файла, так что теперь моя конфигурация выглядит так:

# dhcpd.conf
#
# Sample configuration file for ISC dhcpd

INTERFACES="enp16s0";


option domain-name "Debiann.com";
option domain-name-servers 10.5.200.254;

default-lease-time 86400 ;
max-lease-time 172800;

authoritative;

log-facility local7;

#option 66
option tftp-server-name "40.4.200.218";

#option67
option bootfile-name "smsboot\x64\wdsmgfw.efi";

allow booting;
allow bootp;

subnet 10.5.200.0 netmask 255.255.255.0 {
    option domain-name-servers 10.5.200.254;
    option broadcast-address 10.5.200.255;
    option subnet-mask 255.255.255.0;


group {
            next-server 40.4.200.218;
            filename "smsboot\x64\wdsmgfw.efi";


            host ubuntu {
                    hardware ethernet 08:00:07:26:c0:a5;
                    fixed-address 10.5.200.10; }
            }
    }

теперь я снова становлюсь: PXE-E32: тайм-аут открытия TFTP.

Акула-проволока говорит: введите описание изображения здесь

ПРАВКА 3:

хорошо, спасибо большое за вашу помощь!

Я нашел пост парня, у которого была такая же проблема (которому вы помогли):

Проблемы с DnsMasq, DHCP proxy, PXE для клиентов UEFI

Я попробую настроить его таким образом, но есть одна проблема... парень в нашей компании, который отвечает за имена файлов, болен... но по сути у меня будет один вариант загрузки DHCP, т.е.

dhcp-boot=smsboot\x64\wdsmgfw.efi,MUCSVCM01,40.4.200.218 

и 3 варианта pxe-service, о которых вы мне только что рассказали?

потому что этот парень сделал это вот так:https://forums.fogproject.org/topic/8677/dnsmasq-bios-and-uefi

Мой окончательный dnsmasq.conf будет выглядеть так, потому что у других ребят есть verndorclasses и больше параметров загрузки dhcp?

    interface=enp16s0
    listen-address=127.0.0.1
    listen-address=10.5.200.254
    local=/debrou.com/
    expand-hosts
domain=debrou.com
dhcp-range=10.5.200.100,10.5.200.200,48h
dhcp-option=option:router,10.5.200.254
dhcp-option=19,1
dhcp-authoritative
dhcp-boot=smsboot\x64\wdsmgfw.efi,MUCSVCM01,40.4.200.218
 # PXEClient:Arch:00000
 pxe-service=X86PC, "Boot BIOS PXE", smsboot\x64\wdsmgfw,

 # PXEClient:Arch:00007
 pxe-service=BC_EFI, "Boot UEFI PXE-BC", smsboot\x64\wdsmgfw.efi

 # PXEClient:Arch:00009
 pxe-service=X86-64_EFI, "Boot UEFI PXE-64", smsboot\x64\wdsmgfw.efi

поэтому я взял другой ноутбук, попробовал его с этим (у меня UEFI), та же ошибка (NBP слишком большой)

проверил BIOS, он также включен, выключил Legacy, попробовал еще раз, но процесс загрузки даже не дошел (это HP 430 G4). У других людей тоже есть эта проблема, поэтому я думаю, что это не ошибка конфигурации.

решение1

если PXE и ​​TFTP обрабатываются SCCM, то вы создаете конфликтующий новый PXE-сервер с вашей конфигурацией DHCP.

Определите, действительно ли SCCM предоставляет службы PXE/DHCP. Если это так, добавьте новую сеть к работающему DHCP-серверу и включите службы IP Helper на маршрутизаторе, чтобы правильно пересылать широковещательный трафик DHCP между сетями.

Редактировать 1:

Предоставление PXE => TFTP Server + DHCP server с параметрами PXE. Затем вы должны убедиться, что у вас нет 2 PXE server; 1) SCCM 2) ваш DHCP server в новой сети.

Если вы просто хотите использовать службы TFTP из SCCM, то вам необходимо остановить службы DHCP, а затем добавить DHCP-сервер в новую сеть.

Если DHCP-трафику не нужно пересекать границы маршрутизатора (т. е. DHCP-сервер расположен в новом сегменте сети), то вам не нужно запускать вспомогательные службы IP.

Редактировать 2:

  1. Если DHCP-сервер напрямую обслуживает подсеть 10.5.200.0, вам следует избегать IP Helpers.
  2. Конфигурация PXE DHCP полностью включает параметры «next-server» и «filename», просто избегайте других параметров DHCP, связанных с PXE, таких как 66/67 и т. д.
  3. Вы не получите лучших результатов, просто изменив DHCP-сервер.
  4. Получите захват трафика Wireshark и посмотрите на уровне пакетов, что на самом деле получает клиент от DHCP-сервера.

ПРАВКА 3:

DHCP-сервер с поддержкой PXE должен анализировать архитектуру PXE, объявленную при загрузке, и соответственно предоставлять соответствующий NBP. Например, для Dnsmasq

 # PXEClient:Arch:00000 
 pxe-service=X86PC, "Boot BIOS PXE", bios/pxelinux

 # PXEClient:Arch:00007 
 pxe-service=BC_EFI, "Boot UEFI PXE-BC", efi64/syslinux.efi

 # PXEClient:Arch:00009 
 pxe-service=X86-64_EFI, "Boot UEFI PXE-64", efi64/syslinux.efi

В этом примере мы предоставляем bios/pxelinuxNBP для ПК с загрузкой BIOS и efi64/syslinux.efiдля ПК с загрузкой 64Bit UEFI. Вам необходимо адаптировать параметры с учетом вашего конкретного сценария.

Связанный контент