Показать сообщение отдельно
Старый 28.01.2017, 16:09   #118
laba
Местный
 
Аватар для laba
 
Регистрация: 06.03.2009
Адрес: Питер
Сообщений: 3,693
Сказал(а) 'не согласен(а)'!: 10
Сказали 'не согласен'! 0 раз(а) в 0 сообщениях
Сказал(а) спасибо: 6,942
Поблагодарили 4,844 раз(а) в 1,822 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: репутация неоспорима (5127)
По умолчанию

Теперь будем настраивать WiFi, как точку доступа(АР).
Инфу брал из сети.(ссылка перестала работать, хорошо, что всё записал в блокнотик)

Устанавливаем утилиты:
Код:
sudo apt-get install dnsmasq hostapd
Открываем файл dhcpcd.conf
Код:
sudo nano /etc/dhcpcd.conf
и в конец файла дописываем строчку:
Код:
denyinterfaces wlan0
Если там есть ещё какие-то добавленные интерфейсы, то эта строчка должна быть выше них.

Теперь настроим статический адрес:
Код:
sudo nano /etc/network/interfaces
Отредактируем раздел wlan0
Код:
allow-hotplug wlan0  
iface wlan0 inet static  
    address ххх.ххх.ххх.1
    netmask 255.255.255.0
    network ххх.ххх.ххх.0
    broadcast ххх.ххх.ххх.255
#    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
Естественно вместо ххх.ххх.ххх., вписывается желаемый IP адрес.

Перезагружаем dhcpcd:
Код:
sudo service dhcpcd restart
потом перезагружаем wlan0:
Код:
sudo ifdown wlan0; sudo ifup wlan0
НАСТРОЙКА HOSTAPD
Создаём новый файл конфигурации:
Код:
sudo nano /etc/hostapd/hostapd.conf
прописываем там следующее:
Скрытый текст
Код:
# This is the name of the WiFi interface we configured above
interface=wlan0

# Use the nl80211 driver with the brcmfmac driver
driver=nl80211

# This is the name of the network(имя сети)
ssid=Pi3-AP

# Use the 2.4GHz band
hw_mode=g

# Use channel 6
channel=6

# Enable 802.11n
ieee80211n=1

# Enable WMM
wmm_enabled=1

# Enable 40MHz channels with 20ns guard interval
ht_capab=[HT40][SHORT-GI-20][DSSS_CCK-40]

# Accept all MAC addresses
macaddr_acl=0

# Use WPA authentication
auth_algs=1

# Require clients to know the network name
ignore_broadcast_ssid=0

# Use WPA2
wpa=2

# Use a pre-shared key
wpa_key_mgmt=WPA-PSK

# The network passphrase(пароль от 8 до 63 символов)
wpa_passphrase=123456789

# Use AES, instead of TKIP
rsn_pairwise=CCMP

Прописываем там имя сети ssid и пароль wpa_passphrase

Теперь необходимо указать hostapd , где искать конфигурационный файл при запуске и загрузке системы
Код:
sudo nano /etc/default/hostapd
находим там строчку #DAEMON_CONF="" и заменяем её на следующую:
Код:
DAEMON_CONF="/etc/hostapd/hostapd.conf"
НАСТРОЙКА DNSMASQ

Родной файл конфигурации содержит много чего, нам это не требуется.
Удалять файл не будем, а просто сдвинем его, а вместо него создадим новый файл
Код:
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig  
sudo nano /etc/dnsmasq.conf
Пишем туда следующее:
Код:
interface=wlan0      # Use interface wlan0  
listen-address=ххх.ххх.ххх.1 # Explicitly specify the address to listen on  
bind-interfaces      # Bind to the interface to make sure we aren't sending things elsewhere  
server=8.8.8.8       # Forward DNS requests to Google DNS  
domain-needed        # Don't forward short names  
bogus-priv           # Never forward addresses in the non-routed address spaces.  
dhcp-range=ххх.ххх.ххх.50,ххх.ххх.ххх.150,12h # Assign IP addresses between ххх.ххх.ххх.50 and ххх.ххх.ххх.150 with a 12 hour lease time
НАСТРОЙКА IPV4 ПЕРЕАДРЕСАЦИИ

Открываем файл sysctl.conf:
Код:
sudo nano /etc/sysctl.conf
Раскомментируем там строчку
Код:
net.ipv4.ip_forward=1
Это заработает после перезагрузки, но можно опробовать и сразу:
Код:
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
Теперь согласуем передачу пакетов между интерфейсами wlan0 и eth0:
Код:
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT  
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
Код:
sudo iptables -t nat -A POSTROUTING -o wlan1 -j MASQUERADE  
sudo iptables -A FORWARD -i wlan1 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o wlan1 -j ACCEPT
Но нам нужно, чтобы эти правила применялись каждый раз, когда мы перезагружаем RasPi, поэтому:
Код:
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
Ставим этот файл в автозагрузку:
Код:
sudo nano /etc/rc.local
и чуть выше линии exit 0, добавьте следующую строку:
Код:
iptables-restore < /etc/iptables.ipv4.nat
Запускаем наши службы:
Код:
sudo service hostapd start
sudo service dnsmasq start
Перезагружаемся.....
Теперь у меня RasPi работает, как точка доступа и раздаёт по WiFi интернет, к которому она подключена с помощью кабеля. Раньше у меня такой раздачи не получилось сделать.
Хочу отметить, что в этом режиме встроенный WiFi работает очень даже нормально и проблем с управлением в Rocrail и раздачей инета я не заметил.

P.S. Вот здесь правда описан один трабл, который может вылезти, если в RasPi воткнуть ещё и WiFi USB адаптер.
__________________
HO, цифра, OpenDCC, S-88N, OpenCar, BiDiB
С приветом из подземки!!!

Последний раз редактировалось laba; 28.01.2017 в 18:04.
laba вне форума  
Вверх
3 пользователя(ей) сказали cпасибо: