IFCFG-PPP(5)
π IFCFG-PPP(5) β network configuration, but make it PPP
okay bestie, sit down, because this is the page for ifcfg-ppp β the interface ppp configuration, aka how you tell wicked "hey girl, this thing talks PPP" π
β¨ NAME β¨
ifcfg-ppp β interface ppp configuration. that's it, that's the vibe. π
πΈ SYNOPSIS πΈ
/etc/sysconfig/network/ifcfg-*
/etc/sysconfig/network/providers/provider*
π¦ PPP Interfaces π¦
so to set up a PPP interface you need a config file named ifcfg-ppp<X> β and yes, X is flexible, you can literally use an arbitrary name for the ppp device, like dsl0 for a DSL connection, iykyk π« β with all the usual network settings in it. but!! you have to add some extra variables too, no skipping:
PPPMODE {pppoe|pppoatm|pptp|isdn|serial|modem}β you MUST set this to one of the types below, because this is literally how the system figures out "oh, this is a ppp interface". the types:pppoeβ Point-to-Point over Ethernet (PPPoE) device type. π the main characterpppoatmβ Point-to-Point over Asynchronous Transfer Mode (PPPoATM) device type. Currently NOT SUPPORTED. πpptpβ Point-to-Point Tunneling Protocol (PPTP) device type. Currently NOT SUPPORTED. πisdnβ Point-to-Point for ISDN connection types. NOT SUPPORTED. πserialβ Point-to-Point for general serial connections via fixed line or modem. NOT SUPPORTED. πmodemβ Point-to-Point for connections using 3G/UMTS modems. NOT SUPPORTED. π
PROVIDER [filename]β this variable holds the filename of a provider configuration file living in the/etc/sysconfig/network/providers/directory. that provider file is where all the provider-specific configuration options go π«ΆPPPDEBUG {true|false}β turns on debug mode for thepppdinstance. ngl, very useful when things are being weird π΅οΈββοΈ
π PPPoE MODE SPECIFIC OPTIONS π
DEVICE [ifname]β the real, subordinate ethernet device interface name that gets used to establish the PPP connection. like the actual physical bestie underneath all the PPP drama β¨
π PROVIDER FILE CONFIGURATION OPTIONS π
this is the good part, the provider file glow-up:
DEFAULTROUTE {true|false}β sets a default route in the system routing tables, using the peer as the gateway. important detail: the default route is only set once IPCP negotiation succeeds, and it's automatically removed when the PPP connection stops. also the current default route in the routing tables will be replaced with the new default route. π
Default: true
DEMAND {true|false}β only initiates the link when there's actual data traffic. this option lets you specify the remote IP address. the interface is initially pre-configured and enabled for IP traffic, but without a connection to the peer. then, upon traffic, the connection to the peer happens along with negotiation, authentication, etc. very "i'll respond when there's something worth responding to" energy π
Default: false
IDLETIME [seconds]β how many seconds before an idle link gets disconnected. a link counts as idle when no data traffic is being sent or received. for more info please refer topppd(8). π°οΈ
Default: 600
AUTODNS {true|false}β obtains the DNS server addresses from the peer. those addresses (if there are any) get passed to the/etc/ppp/ip-upscript in the environment variablesDNS1andDNS2, and the environment variableUSEPEERDNSwill be set to1. β οΈ but this option requires theMODIFYDNSvariable to be set totruefor it to have any effect at all β noMODIFYDNS, no vibes.
Default: true
DNS1/DNS2 [IP-address]β specify the DNS server addresses to set on the system with lowered preference compared to the server provided by the peer. use cases: initiate the connection on dns queries in demand dialing mode, or as a fallback when the peer doesn't provide any dns servers. these servers are applied by wicked using the/etc/ppp/{pre-start,post-stop}scripts. π§MODIFYIP/MODIFYIP6 {true|false}β when you've specified local and/or remote IP addresses for the link, this option allows those user addresses to be modified with the addresses negotiated with the peer. to set the user addresses prior to negotiation with the peer, theDEMANDvariable must be set totrue. without this option, thepppdinstance will not accept different values in the IPCP negotiation. periodt.
Default: true
IPADDR [IP-address]β IPv4 address to be set as the local IP of the PPP connection. πREMOTE_IPADDR [IP-address]β IPv4 address to be set as the remote IP of the PPP connection. πIPADDR6 [localinterfaceidentifier]β IPv6 local identifier to be set as the local IP of the PPP connection. π but β¨v6β¨REMOTE_IPADDR6 [remoteinterfaceidentifier]β IPv6 remote identifier to be set as the remote IP of the PPP connection. π but β¨v6β¨MULTILINK {true|false}β enables the PPP multilink protocol. if the peer supports it, the created link can become part of a bundle between the local system and the peer. squad goals fr fr π―ββοΈ
Default: false
ENDPOINT [discriminator]β sets the endpoint discriminator sent by the local host to the peer during multilink negotiation. for more information please refer topppd(8). must be specified when theMULTILINKvariable is set totrue. no endpoint, no bundle. π¨AUTO_RECONNECT {true|false}β instructs thepppdinstance to automatically try to reopen the terminated connection when set totrue. otherwise thepppdinstance exits immediately after a connection has been made and terminated. the number of attempts can be specified using theMAXFAILvariable. the delay between attempts can be specified using theAUTO_RECONNECT_DELAYvariable. it's giving "i'll text back, i promise" π
Default: false
AUTO_RECONNECT_DELAY [seconds]β the number of seconds of delay between reconnection attempts when theAUTO_RECONNECTvariable is set totrue.
Default: 15
MAXFAIL [num]β the number of reconnection attempts thepppdinstance makes when it's unable to establish the connection.
Default: 10
USERNAME [string]β the user name used for authenticating the local system to the peer. πPASSWORD [string]β the user password used for authenticating the local system to the peer. π (keep it secret, keep it safe π«Ά)
π Example π
here's a simple DSL-related PPPoE interface configuration plus its corresponding provider file β chef's kiss example:
/etc/sysconfig/network/ifcfg-dsl0
STARTMODE='auto'
BOOTPROTO='static'
DEVICE='eth0'
PPPMODE='pppoe'
PROVIDER='provider0'
/etc/sysconfig/network/provider/provider0
PROVIDER='Provider name'
AUTODNS='false'
AUTO_RECONNECT='true'
DEFAULTROUTE='true'
DEMAND='false'
IDLETIME=''
MODIFYIP='false'
IPADDR=''
REMOTE_IPADDR=''
MODIFYDNS='false'
USERNAME='user'
PASSWORD='XXXXXXXXXX'
and now an advanced DSL-related PPPoE interface configuration plus its corresponding provider file. she leveled up π π₯
/etc/sysconfig/network/ifcfg-dsl1
STARTMODE='auto'
BOOTPROTO='static'
DEVICE='eth1'
PPPMODE='pppoe'
PROVIDER='provider1'
/etc/sysconfig/network/provider/provider1
PROVIDER='Provider name'
AUTODNS='false'
AUTO_RECONNECT='true'
DEFAULTROUTE='true'
DEMAND='true'
IDLETIME=''
MODIFYIP='true'
IPADDR='10.0.0.1'
REMOTE_IPADDR='10.0.0.2'
MODIFYDNS='false'
USERNAME='user'
PASSWORD='XXXXXXXXXX'
β Additional Information β
for additional and more general information, take a look into pppd(8). or pppoe(8). (yes, both. go read, bestie π)
π COPYRIGHT π
Copyright (C) 2016 SUSE Linux GmbH, Nuernberg, Germany.
π BUGS π
please report bugs as described at <https://bugs.opensuse.org> β they want the feedback, fr fr π
π¦ AUTHOR π¦
Pawel Wieczorkiewicz -- original ppp man page. icon. legend. the moment. π
πΈ SEE ALSO πΈ
pppd(8), ifcfg(5), wicked(8), pppoe(8), netconfig(8)
π that's the whole page, bestie. now go configure your PPP interface and slay.
wicked Β· May 2016 Β· IFCFG-PPP(5) β mwah, ily, go read pppd(8) next π«Άβ¨
π¦ where this page comes from
- opensuse-leap 16.0: wicked 0.6.80-bp160.2.1 Β· GPL-2.0-or-later
- opensuse-leap 16.0: wicked 0.6.80-bp160.2.1 Β· GPL-2.0-or-later
- opensuse-leap 16.0: wicked 0.6.80-bp160.2.1 Β· GPL-2.0-or-later
- opensuse-leap 16.0: wicked 0.6.80-bp160.2.1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms