Настройка Linux box как WAP для MyBookLive?

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

Я просто вытер Linux box (home) и установил на него Ubuntu 12.04. Моя настройка сети в настоящее время выглядит следующим образом:

       (192.168.0.1
    netmask 255.255.255.0)     
ISP --- wireless router --- wlan0 on home (192.168.0.12)
               |             eth0 on home --- MyBookLive
            MacBook
        (192.168.0.11)

Так, что MyBookLive по существу прославленный внешний жесткий диск. Роутер имеет Ethernet порт, но он используется компьютер моего соседа, поэтому я не могу заткните MyBookLive сразу в его.

прямо сейчас я могу ping MyBookLive.местные и MacBook.локальный из дома, но у меня возникли проблемы с пониманием и выяснением того, что правильные команды iptables должны заставить мой MacBook видеть мой MyBookLive через сеть Bonjour. Кроме того, я не уверен, Нужно ли мне настроить DNS для пересылки xxx.локальные адреса Bonjour / Zeroconf.

я попробовал следующее, чтобы перенаправить всю мою проводную сеть (которая имеет только мой MyBookLive) на один IP адрес:

sysctl net.ipv4.ip_forward=1
iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT
iptables -t nat -A PREROUTING -i eth0 -p tcp -j DNAT --to 192.168.0.66
iptables -t nat -A PREROUTING -i eth0 -p udp -j DNAT --to 192.168.0.66

но я не могу пропинговать этот адрес с моего MacBook.
Это, вероятно, ужасно неправильно, но я полный нуб при настройке такого рода сети и мог бы использовать некоторую экспертную помощь в настройке этого должным образом.

25
задан BorisHajduk
04.05.2023 10:02 Количество просмотров материала 3269
Распечатать страницу

3 ответа

проще всего здесь настроить NAT и перенаправить необходимые порты из интерфейса wlan0 home на эквивалентные порты на интерфейсе внешнего жесткого диска.

следующий сценарий является примером, который будет настроить NAT таким образом, чтобы устройства, подключенные к eth0 на дому (через коммутатор или кросс-over TP) получит доступ к беспроводной сети.

#!/bin/sh
INTERNAL_IP=home.lan
INTERNAL_NM=255.255.255.0
INTERNAL=eth0
EXTERNAL=wlan0

ifconfig $INTERNAL $INTERNAL_IP netmask $INTERNAL_NM up

echo 1 >/proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o $EXTERNAL -s 192.168.0.0/24 -j MASQUERADE
iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -m state \
    --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i $INTERNAL -o $EXTERNAL -j ACCEPT

для описанной ситуации, чтобы работать, устройства из беспроводной сети должен быть включен, чтобы "оглянуться назад" в сети за NAT (который скрывается за домом.локальная сеть.) Подход, который вы пробовали в вопросе, в основном правильный, за исключением того, что он переводится в неправильном направлении. Вы хотите переадресовывать пакеты, поступающие на определенные порты в домашних условиях.интерфейс lan в локальный скрытый NAT-адрес mbl.локальной сети

#(continued)
iptables -t nat -A PREROUTING -i $EXTERNAL -p tcp --dport 445 -j DNAT \
      --to mbl.lan:445
iptables -t nat -A PREROUTING -i $EXTERNAL -p tcp --dport 139 -j DNAT \
      --to mbl.lan:139

Эта настройка делает невозможным запуск сервера samba на домашнем узле, так как трафик, поступающий на порты samba по умолчанию, отправляется на внешний жесткий диск. Это не является частью вопроса, но возможным решением было бы запустить службу samba home на другом порту или использовать значение --dport, такое как 4455, и вручную настроить клиентов для подключения к другому порту при доступе к my book live.

обратите внимание, что в этом ответе предполагается, что на диске используется samba и что порты нужно будет настроить, если используется другой протокол.

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

сетевые псевдонимы:

mbl.lan (моя книга живой ip-адрес; 192.160.0.66)

домашний.lan (home wlan0 ip address; 192.168.0.12)

References:

http://www.centos.org/docs/4/html/rhel-sg-en-4/s1-firewall-ipt-fwd.html

http://www.netfilter.org/documentation/HOWTO//NAT-HOWTO-6.html#ss6.2

0
отвечен Ярослав Рахматуллин 2023-05-05 17:50

я думаю, что простое решение заключается в настройке устройства моста br0 на linux-box и добавить интерфейсы eth0 и wlan0 к нему.

  1. скачать bridge-utils на ubuntu
  2. добавить bridge brctl addbr br0
  3. добавить сетевые устройства в bridge brctl addif br0 eth0 и brctl addif br0 wlan0
  4. установите IP на br0 интерфейс (не устанавливать IPs в eth0 или wlan0)
  5. удалить правила DNAT из iptables
  6. редактировать iptables config и заменить параметры -i и -o С -m physdev --physdev-in и -m physdev --physdev-out

это создадим виртуальный br0 интерфейс, который действует, как будто и wlan0 и eth0 были одним интерфейсом в одной сети. Это позволяет получить доступ к сетевому диску с любого компьютера из сети.

изменить:

это работает если вы используете wlan0 как AP в master mode. Полагаю, вы используете hostapd создать точку доступа на linux-box.

еще одна вещь, которую я должен отметим, что добавление интерфейса wlan0 в моем случае возможно только после I exec hostapd первый.

большой ресурс hostapd и беспроводная сеть linux: http://linuxwireless.org/en/users/Documentation/hostapd

0
отвечен week 2023-05-05 20:07

у меня есть аналогичная настройка для краткосрочного тестирования.

установите hostapd следующим образом: (hostapd-демон беспроводной точки доступа)

sudo apt-get install hostapd

вот действительно минимальный hostapd.конфигурационный файл conf (обратите внимание, что для защиты сети с помощью WPA/WPA2 потребуется больше конфигурационных файлов).

interface=wlan0
driver=nl80211
ssid=AcidFlask
channel=9
hw_mode=g
country_code=NO
auth_algs=1
wpa=0
ignore_broadcast_ssid=0

затем я запускаю демон hostapd и перенаправление таким образом:

sysctl net.ipv4.ip_forward
sysctl -w net.ipv4.ip_forward=1
ifconfig wlan0 172.20.99.1 netmask 255.255.255.0
iptables -t nat -A POSTROUTING -s 172.20.99.0/24 -o eth0 -j MASQUERADE
hostapd -d hostapd.conf

наконец, я определяю статический IP на моем клиенте (172.20.99.2 например, с маской сети 255.255.255.0, шлюз 172.20.99.1 и DNS-8.8.8.8).

Это действительно решение barebone, так как ему не хватает беспроводной безопасности и DHCP, но он должен работать, и вы можете построить в зависимости от ваших потребностей на вершине этого.

Также обратите внимание, что это решение требует вашего wifi адаптер для поддержки режима AP:

  • ath9k будет работать в большинстве случаев
  • rtl8187 не будет работать AFAIK

изменить: Я неправильно понял вашу фразу "используя Linux box как беспроводная точка доступа". Я думал, вы хотите подключить ваш Linux box к MyBookLive по беспроводной сети. Не обращайте внимания на мое решение.

0
отвечен BorisHajduk 2023-05-05 22:24

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх