2

Беспроводной компонент моего маршрутизатора начал внезапно разрываться и разрывать соединения, поэтому я импровизировал WAP со старого нетбука, подключенного к этому маршрутизатору. Я очень не осведомлен о работе с сетями, поэтому уверен, что с моей стороны есть недопонимание, но хотя устройства в WAP могут охватить всю сеть, я не могу понять, как получить к ним доступ с проводных устройств. ЛВС выглядит примерно так:

--------------------
|      ROUTER      |
|    192.168.1.1   |
--------------------
   |    |  |  |  |
Modem   A  B  C  |
                 |
         -----------------
         |      D (WAP)  |
         |  192.168.1.22 |
         |  192.168.45.1 |
         -----------------
            _    _    _
            =    =    = 
            E    F    G

Устройства A, B и C находятся в диапазоне IP 192.168.1.x. Беспроводные устройства E, F и G находятся на 192.168.45.x.

Так что, если я пинг A от E, я получу ответ. По словам Wireshark, пинг происходит с 192.168.1.22. E недоступен при пинге от A по его адресу .45.x.

/etc/udhcpd.conf:

start 192.168.45.2 
end 192.168.45.18
interface wlan0
remaining yes
opt dns 192.168.1.1 8.8.8.8
opt subnet 255.255.255.0
opt router 192.168.45.1
opt lease 864000

/etc/hostapd/hostapd.conf:

interface=wlan0
ssid=MYWAP
hw_mode=g
channel=6
auth_algs=1
wmm_enabled=0
wpa=2
wpa_passphrase=mypassword
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

/ и т.д. / сеть / интерфейсы:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
        address 192.168.1.22
        netmask 255.255.255.0
        network 192.168.1.0
        broadcast 192.168.1.255
        gateway 192.168.1.1

iface wlan0 inet static
  address 192.168.45.1
  netmask 255.255.255.0

up iptables-restore < /etc/iptables.ipv4.nat

Скрипт пересылки IP выглядит так:

sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
echo 'net.ipv4.ip_forward=1' > /etc/sysctl.conf
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT

sh -c "iptables-save > /etc/iptables.ipv4.nat"

Я попытался настроить статический маршрут на модем-подключенном маршрутизаторе, но безуспешно:

Destination LAN IP: 192.168.45.0
Subnet Mask:        255.255.255.0
Default Gateway:    192.168.1.22
Interface:          LAN & Wireless

Есть ли способ легко нормализовать обнаружение сети, чтобы проводные устройства могли использовать беспроводные принтеры и т.д., Подключенные к WAP? Я иду по этому поводу неправильно? Могу ли я как-то разместить их все в одной подсети и оставить функциональность DHCP для исходного маршрутизатора?

3 ответа3

2

Есть ли способ легко нормализовать обнаружение сети, чтобы проводные устройства могли использовать беспроводные принтеры и т.д., Подключенные к WAP? Я иду по этому поводу неправильно? Могу ли я как-то разместить их все в одной подсети и оставить функциональность DHCP для исходного маршрутизатора?

Я думаю, что вы ответили на свой вопрос. Обычно автоматическое обнаружение опирается на широковещательные пакеты, которые не пересекаются между подсетями - особенно когда речь идет о чем-либо, связанном с samba. Честно говоря, если вы хотите, чтобы все ваши устройства работали так, как если бы они находились в одной сети, то, вероятно, вы должны иметь их все в одной сети.

Если вы хотите пойти по этому пути (и я думаю, что это наиболее подходящее решение с учетом требований), вам необходимо соединить проводные и беспроводные соединения ноутбука.

У Debian есть пакет, который сделает это за вас ..

apt-get install bridge-utils

После установки вам нужно будет создать мост с помощью команды

brctl addbr br0

Это создает мостовой интерфейс, которому вы будете назначать другие интерфейсы.

Но прежде чем вы сможете это сделать, вам придется отключить интерфейсы и удалить их IP-адреса (они будут разделять один адрес позже)...

ifconfig eth0 0.0.0.0 down
ifconfig wlan0 0.0.0.0 down

Присоедините интерфейсы к мостовому соединению, которое мы создали ранее с

brctl addif br0 eth0
brctl addif br0 wlan0

Наконец, приведите интерфейсы

ifconfig eth0 up
ifconfig wlan0 up
ifconfig br0 up

Это должно запустить поток информации между интерфейсами примерно через 2-3 минуты. Если вам также нужен ноутбук для связи по мосту, вам следует назначить IP-адрес интерфейсу моста.

ifconfig br0 192.168.1.22

Просто к сведению - беспроводные интерфейсы могут иногда требоваться к пересылке широковещательных пакетов, и это действительно зависит от вашего оборудования. Но я бы попробовал и посмотрел, сработает ли это для вас.

2

Используйте следующий процесс:

  • Используйте устройство в качестве моста между вашей проводной сетью и беспроводной сетью
  • Скачать пакет bridge_utils
  • Используйте brctl чтобы установить мост между двумя устройствами

    /usr/sbin/brctl addbr br0 
    /sbin/ifconfig br0 up 
    /usr/sbin/brctl addif br0 eth0
    /usr/sbin/brctl addif br0 wlan0
    /sbin/ifconfig br0 192.168.1.101
    /sbin/ip route add default gw 192.168.1.1
    /usr/sbin/dhcpd wlan0_0
    

Рекомендации

0

Проблема, как вы заявляете, для обнаружения в разных подсетях.

Чтобы решить проблему как есть, вы должны убедиться, что в ваших системах включена служба браузера компьютера. Вы также можете настроить сервер WINS для адресации.

Чтобы включить службу обозревателя компьютера, например, в Windows 7, запустите services.msc, выберите обозреватель компьютера и установите автоматический запуск.

Мостовое соединение удалит разные подсети и, возможно, решит проблему, если вы хотите иметь только одну подсеть. Но если существование подсетей является проблемой, это невозможно сделать.

В Microsoft есть небольшая хорошая статья о сервисе компьютерного браузера. См. Https://technet.microsoft.com/en-us/library/cc737661%28v=ws.10%29.aspx. Он охватывает несколько случаев, в том числе службу браузера компьютера в подсетях, разделенных маршрутизатором. Хорошая статья Например, он не рекомендует пересылать широковещательные сообщения NetBIOS через маршрутизатор. Тем не менее, если у вас все еще есть проблемы, которые могут быть чем-то еще, чтобы попробовать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .