OpenWrt bindet keine lokale IP

364
Avishek Banerjee

Ich muss dem Betriebssystem mitteilen, dass Anwendungen Sockets an nicht lokale IP-Adressen binden dürfen. Ich möchte das in OpenWrt Linux Terminal machen.

Verwenden Sie diesen Befehl

sysctl net.ipv4.ip_nonlocal_bind 

Es zeigt

net.ipv4.ip_nonlocal_bind = 0 

Jedoch beim Aktivieren

sysctl net.ipv4.ip_nonlocal_bind=1 

Es gibt den Fehler

net.ipv4.ip_nonlocal_bind=1 is an unknown key. 

Kann jemand dieses Problem in OpenWrt lösen?

1
Versuchen Sie `sysctl -w net.ipv4.ip_nonlocal_bind = 1` oder bearbeiten Sie die Zeile in` / etc / sysctl.conf` (glaube ich) und starten Sie den Computer neu. Überprüfen Sie, ob die Einstellung mit `sysctl net.ipv4.ip_nonlocal_bind` übernommen wurde. simlev vor 5 Jahren 0
@simlev Warum haben Sie nicht die "-w" -Lösung als Antwort gepostet? Ich habe Ihren bearbeiteten Kommentar nicht gesehen, bis ich antwortete. Wenn Sie jetzt Ihre eigene Antwort schreiben, werde ich meine löschen und Ihnen Kredit schenken. Kamil Maciorowski vor 5 Jahren 0
@ KamilMaciorowski Der Grund, warum ich es als Kommentar gepostet habe, ist, dass ich kein OpenWRT-System habe, auf dem ich es testen könnte. Du machst diesmal weiter ;-) simlev vor 5 Jahren 0
@simlev Lass es dann Community Wiki sein. Fühlen Sie sich frei, Ihre Beratung zu `/ etc / sysctl.conf` hinzuzufügen. Kamil Maciorowski vor 5 Jahren 0

1 Antwort auf die Frage

1
Kamil Maciorowski

Dieses Handbuch sagt:

Um einen Schlüssel festzulegen, verwenden Sie das Formular variable=value[...]. Dazu muss der -wParameter verwendet werden.

( -wAnscheinend ist es in meinem Debian zwar nicht erforderlich; in meinem OpenWRT ist es jedoch sicher). Versuchen:

sysctl -w net.ipv4.ip_nonlocal_bind=1 

Alternativ können Sie die betreffende Zeile jederzeit bearbeiten /etc/sysctl.confund neu starten.

Sie können jederzeit den aktuellen Wert mit überprüfen sysctl net.ipv4.ip_nonlocal_bind.