Heim  >  Artikel  >  System-Tutorial  >  Vollständige Anleitung zur Verwendung der Hostapd-Implementierung unter CentOS7 im AP-losen Modus

Vollständige Anleitung zur Verwendung der Hostapd-Implementierung unter CentOS7 im AP-losen Modus

王林
王林nach vorne
2024-01-04 09:55:38761Durchsuche

Dieser Artikel ist eine weitere Möglichkeit, den AP-Modus für drahtlose Zugangspunkte mit hostapd unter Linux zu implementieren: Hostapd-Routing-Modus-Konfiguration.

Die grundlegende Konfiguration von Software und Hardware sowie die Installation von hostapd werden in der ersten Hälfte von „CentOS 7 Hostapd AP Mode Configuration“ erläutert. Sie können zuerst diesen Artikel und dann diesen Artikel lesen.

Die AP-Modus-Konfiguration von Hostapd erfordert eine Überbrückung zwischen der kabelgebundenen Netzwerkkarte und der drahtlosen Netzwerkkarte. Die Konfiguration des Routing-Modus umfasst hauptsächlich die Tarnung und Weiterleitung der Daten der drahtlosen Netzwerkkarte über die kabelgebundene Netzwerkkarte, sodass keine Überbrückung der kabelgebundenen Netzwerkkarte erforderlich ist drahtlose Netzwerkkarten.

Die Konfiguration dieses Routing-Modus ähnelt der eines gewöhnlichen WLAN-Routers. Der kabelgebundene Netzwerkport entspricht der WAN-Schnittstelle eines gewöhnlichen WLAN-Routers. Die WLAN-Karte ist für das Senden drahtloser Broadcast-Signale an WLAN-Geräte wie Mobiltelefone und Laptops verantwortlich auf das Netzwerk zugreifen.

Aber der Unterschied besteht darin, dass diese Implementierung im Vergleich zu gewöhnlichen WLAN-Routern nicht über vier gewöhnliche LAN-Schnittstellen verfügt und nicht für kabelgebundene Verbindungen von anderen Desktop-Computern verwendet werden kann.

Eigentlich kann Linux als Betriebssystem, das hauptsächlich für Netzwerkfunktionen dient, auch angeschlossen werden, erfordert jedoch Switches und andere Geräte, was komplizierter ist. Meine Konfiguration entspricht hier einem normalen WLAN-Router ohne vier LAN-Schnittstellen.

hostapd.conf-Konfiguration

Hier ist nur eine minimale Konfiguration:

#/etc/hostapd/hostapd.conf Mindestkonfiguration

interface=wlp2s0

G#Bridge = br0#muss nicht mehr überbrückt werden, diese Anmerkungszeile kann

sein

Treiber=nl80211

ssid=test

hw_mode=g

Kanal=1

auth_algs=3

ignore_broadcast_ssid=0                   # Ob gesendet werden soll, 0 Broadcast

wpa=3

wpa_passphrase=12345678                                                                     

Die Konfiguration ähnelt der AP-Modus-Konfigurationsdatei, kommentieren Sie einfach die Option „bridge=br0“ aus.

Kabelgebundene Schnittstellenkonfiguration

Zuerst müssen wir die kabelgebundene Schnittstelle richtig konfigurieren und normal auf das Internet zugreifen können. Der einfachste Weg besteht darin, die IP-Adresse, das Gateway und den DNS automatisch vom Router zu beziehen. Wenn kein Router vorhanden ist, müssen Sie die Internetzugriffsmethode der kabelgebundenen Schnittstelle manuell festlegen, z. B. die häufig verwendete PPPOE-Methode, die statische IP-Adressmethode, die dynamische IP-Adresserfassungsmethode usw. Am einfachsten ist es jedoch, die IP-Adresse dynamisch zu erhalten.

Drahtlose Schnittstelleneinstellungen verwenden den Befehl „ip addr add“

Verwenden Sie den Befehl ip addr add, um die IP-Adresse der drahtlosen Netzwerkkarte festzulegen. Nach dem Neustart wird sie ungültig. Zum Beispiel 172.16.0.1/24 oder andere private Adressen und nicht im selben Netzwerksegment wie die kabelgebundene Netzwerkkarte. Im Allgemeinen ist die IP-Adresse, die die kabelgebundene Netzwerkkarte vom Router erhält, die Netzwerksegmentadresse 192.168.1.0/24.

IP-Adresse hinzufügen 172.16.0.1/24 dev wlp2s0

Tipps

: CentOS 7 verwendet derzeit standardmäßig die NetworkManager-Suite als Netzwerkkonfigurationstool. Ein hier aufgetretenes Problem besteht darin, dass der von der NetworkManager-Suite bereitgestellte Befehl nmcli das Festlegen einer statischen IP-Adresse für die drahtlose Netzwerkkarte nicht unterstützt. Dazu muss der Befehl ip addr add verwendet werden, um die IP-Adresse der drahtlosen Netzwerkkarte manuell festzulegen, oder in /. etc/sysconfig/network Erstellen Sie eine neue Konfigurationsdatei im Ordner -scripts/. Dies ist eine ältere und klassische Schnittstellenkonfigurationsmethode.

Netzwerkprofile verwenden

Wenn Sie die Einstellungen speichern möchten, können Sie eine neue Datei /etc/sysconfig/network-scripts/ifcfg-static-wlp2s0 erstellen und dem Dateinamen das Präfix ifcfg voranstellen.

vi /etc/sysconfig/network-scripts/ifcfg-static-wlp2s0

[root@server ~]# vi /etc/sysconfig/network-scripts/ifcfg-static-wlp2s0

#TYPE=Ethernet

#BOOTPROTO=none

#DEFROUTE=ja

#IPV4_FAILURE_FATAL=nein

#IPV6INIT=ja

#IPV6_AUTOCONF=ja

#IPV6_DEFROUTE=ja

#IPV6_FAILURE_FATAL=nein

#NAME=static-wlp2s0

#UUID=a036678e-8fdf-48f3-8693-961bb6326i744

DEVICE=wlp2s0                                                                                                        

ONBOOT = ja

IPADDR=172.16.0.1                                                                          

PREFIX=24                                                                                                                

#GATEWAY=192.168.10.254                                                                                                                 

#DNS1=127.0.0.1

#DNS2=192.168.10.254

#IPV6_PEERDNS=ja

#IPV6_PEERROUTES=ja

Nach dem Speichern müssen Sie zunächst den Dienst NetworkManager.service stoppen. Am besten deaktivieren Sie den Start, da sonst weiterhin Probleme auftreten. Das Hauptsymptom ist, dass network.service beim Booten nicht gestartet werden kann.

Deaktivieren Sie den Start von NetworkManager.service beim Start

systemctl deaktiviert NetworkManager.service

Stoppen Sie den NetworkManager.service-Dienst

systemctl stoppt NetworkManager.service

Wenn Sie sehen möchten, ob es wirksam wird, können Sie den Dienst network.service neu starten oder das System direkt neu starten.

systemctl restart network.service

Weiterleitung aktivieren und Schnittstellenmaskierung konfigurieren. Weiterleitung aktivieren

Die Verwendung von sysctl -w schlägt nach dem Neustart fehl

sysctl -w net.ipv4.ip_forward=1

[root@server ~]# sysctl -w net.ipv4.ip_forward=1

net.ipv4.ip_forward = 1

Die Aktivierung der IP-Weiterleitung ist nach dem Neustart nicht ungültig. Verwenden Sie die folgende Methode. Nach dem Neustart des Systems werden die Einstellungen im Ordner /etc/sysctl.d/ automatisch geladen.

vi /etc/sysctl.d/ip_forward.conf

[root@server ~]# vi /etc/sysctl.d/ip_forward.conf

net.ipv4.ip_forward = 1

Schnittstellentarnung konfigurieren

In CentOS 7 können sowohl firewalld als auch iptables zum Tarnen von Schnittstellen verwendet werden. Der Dienst firewalld.service ist in CentOS 7 standardmäßig aktiviert. Der iptables-Dienst steht in Konflikt mit dem firewalld-Dienst und nur einer von ihnen kann aktiviert werden.

Verwenden Sie Firewalld, um die Schnittstellentarnung zu konfigurieren

Wenn Sie die grafische Oberfläche zur Konfiguration verwenden können, wird es einfacher und übersichtlicher. Hier wird nur der Befehl firewalld-cmd zur Konfiguration verwendet.

Wenn der Dienst firewalld.service nicht gestartet ist, müssen Sie zuerst den Dienst firewalld.service starten.

systemctl starte firewalld.service

Fügen Sie die drahtlose Schnittstelle zum Vertrauensbereich hinzu und speichern Sie die Konfiguration. Standardmäßig gehören alle Schnittstellen zum öffentlichen Bereich und die Verbindungsbeschränkungen sind streng, was dazu führt, dass keine Verbindung hergestellt werden kann.

firewall-cmd --zone=trusted --add-interface=wlp2s0 --permanent

[root@server ~]# firewall-cmd --zone=trusted --add-interface=wlp2s0 --permanent

Erfolg

Aktivieren Sie die Tarnung für den Bereich, in dem sich die kabelgebundene Schnittstelle befindet, und speichern Sie die Konfiguration. Standardmäßig gehört die kabelgebundene Schnittstelle zum öffentlichen Bereich.

firewall-cmd --zone=public --add-masquerade --permanent

[root@server ~]# firewall-cmd --zone=public --add-masquerade --permanent

Erfolg

Firewall-Dienst neu starten

systemctl restart firewalld.service

Verwenden Sie iptables, um die Schnittstellentarnung zu konfigurieren

Wenn Sie mit der Verwendung von iptables vertraut sind, müssen Sie das Paket iptables-services installieren, das die beiden Dienste iptables.service und ip6tables.service enthält, die für IPv4 bzw. IPv6 verwendet werden.

Um iptables zu verwenden, müssen Sie den Dienst firewalld.service stoppen und deaktivieren

systemctl stop firewalld.service

systemctl firewalld.service deaktivieren

Aktivieren Sie den iptables.service-Dienst erneut. Da IPv4 immer noch hauptsächlich verwendet wird, aktivieren Sie nur iptables.service. Wenn Sie iptables verwenden, müssen Sie beim Start auch den Dienst iptables.service einrichten.

systemctl aktiviert iptables.service

Starten Sie den Dienst iptables.service

systemctl startet iptables.service

Schnittstellenverkleidung

iptables -t nat -A POSTROUTING -o p2p1 -j MASQUERADE

Im Allgemeinen konfigurieren Sie einfach den obigen Befehl. Wenn die Firewall-Einstellungen streng sind, müssen Sie die drahtlose Netzwerkkartenschnittstelle wlp2s0 hinzufügen, die die Weiterleitung ermöglicht.

iptables -t filter -A FORWARD -i wlp2s0 -j ​​​​ACCEPT

dnsmasq-Konfiguration dnsmasq-Softwareinstallation

dnsmasq ist hauptsächlich für die Zuweisung von Client-IP-Adressen und DNS-Auflösungsdiensten verantwortlich.

Wenn es nicht installiert ist, installieren Sie zuerst die dnsmasq-Software

yum install dnsmasq

Stellen Sie ein, dass der dnsmasq-Dienst beim Booten automatisch gestartet wird

systemctl dnsmasq.service aktivieren

dnsmasq.conf-Konfiguration

vi /etc/dmsmasq.conf

[root@server ~]# vi /etc/dnsmasq.conf

# Geben Sie die Schnittstelle an. Hängen Sie nach der Angabe die lo-Schnittstelle an. Sie können den Platzhalter „*“ verwenden

interface=wlp2s0

# Bindungsschnittstelle

Bind-Schnittstellen

# DHCP-Adresspool von 172.16.0.100 bis 172.16.0.200

dhcp-range=172.16.0.100,172.16.0.200,255.255.255.0,1h

Um den dnsmansq-Dienst zu starten, muss die IP-Adresse der WLAN-Karte korrekt eingestellt sein. dnsmasq legt automatisch die aktuelle Adresse der drahtlosen Netzwerkkarte 172.16.0.1 als Gateway-Adresse und DNS-Adresse des Clients fest.

systemctl startet dnsmasq.service

Starten Sie abschließend den Hostapd-Dienst neu

systemctl startet hostapd.service neu

Das obige ist der detaillierte Inhalt vonVollständige Anleitung zur Verwendung der Hostapd-Implementierung unter CentOS7 im AP-losen Modus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:jb51.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen