Ich habe zwei PPP-Peers, dsl-line1 und dsl-line2, die mit pppd unter Ubuntu (Server) Linux konfiguriert sind.
Sie werden von der Datei /etc/network/interfaces mit dem Auto-Ding aufgerufen, aber jede PPP-Verbindung wählt den Namen pppX, wobei X je nachdem, was zuerst kommt, variiert.
Ich möchte es so machen, dass dsl-line1 auf einen Namen wie „dsl0“ und dsl-line2 auf einen Namen wie „dsl1“ kommt, damit ich für beide einfacher Firewall-Regeln erstellen und Routing einrichten kann (ebenfalls weil es einfacher zu konfigurieren ist).
Meine Frage ist, wie kann ich die Schnittstellen des pppd dazu bringen, sich selbst zu benennen?
/etc/ppp/peers/dsl-line1 (dsl-line2 ist im Grunde dasselbe, abgesehen davon, dass die Standardroute entfernt wurde und die Ethernet-Schnittstelle anders ist)
noipdefault
defaultroute
replacedefaultroute
hide-password
#lcp-echo-interval 30
#lcp-echo-failure 4
lcp-echo-interval 10
lcp-echo-failure 3
noauth
persist
#mtu 1492
#persist
#maxfail 0
#holdoff 20
plugin rp-pppoe.so eth1
user "[email protected]"
/etc/network/interfaces (der line1-Teil wiederum, 2 ist sehr ähnlich)
auto dsl0
iface dsl0 inet ppp
pre-up /sbin/ifconfig eth1 up # line maintained by pppoeconf
post-up /bin/sh /home/callum/ppp0_up.sh # Route everything
post-up /bin/sh /etc/miniupnpd/ppp0_up.sh # Start miniupnpd (if not alr$
provider dsl-line1
Vielen Dank im Voraus.
Akzeptierte Antwort:
Während ältere Versionen von pppd
Biete die unit
an Option, auf die @CallumA hingewiesen hat:
unit num
Sets the ppp unit number (for a ppp0 or ppp1 etc interface
name) for outbound connections.
… neuere Versionen von pppd
für Linux (z. B. 2.4.7) sind gepatcht, um den ifname
anzubieten Option, mit der Sie einen völlig beliebigen Schnittstellennamen festlegen können, wie zum Beispiel ppp_tunnel
oder magic0
usw.:
ifname string
Set the ppp interface name for outbound connections.
If the interface name is already in use, or if the name
cannot be used for any other reason, pppd will terminate.
Wie in den Kommentaren erwähnt, ist der ifname
Option ist Linux-spezifisch . Ich vermute, dass es im Upstream nicht zusammengeführt wurde, da nicht alle Betriebssysteme die Möglichkeit haben, einen beliebigen Schnittstellennamen festzulegen. (Unter Linux wird der Schnittstellenname mit dem SIOCSLIFNAME
gesetzt ioctl
.)