How to Configure PPPOE in Centos 7/RHEL 7

The Point-to-Point Protocol over Ethernet (pppoe or PPPOE) is a network protocol for encapsulating PPP frames inside Ethernet frames. It appeared shortly after the year 2000, in the context of the boom of DSL as the solution for tunneling packets over the DSL connection to the ISP’s IP network, and from there to the rest of the Internet.

A PPPoE session is initiated by using connection software on the client machine or router. PPPoE session initiation involves the identification of the Media Access Control (MAC) address of the remote device.When a PPPoE session is initiated, the destination IP address is only used when the session is active. The IP address is released after the session is closed, allowing for efficient re-use of IP addresses.

Configuring PPPOE connection in CENTOS 7

Check the package rp-pppoe installed or not by using command

#rpm -qa rp-pppoe

By Default the package is not installed in RHEL7/CentOS 7 install the Package by using the command.

#yum install rp-pppoe -y

Login as root user and Type pppoe-setup in terminal.

It prompts for user name (input the user name provided by ISP)

Then it Prompts for Interface input the interface name(check the interface name by using the nmcli con show command) and press Enter.


Enter the Ethernet interface connected to the PPPoE modem
For Solaris, this is likely to be something like /dev/hme0.
For Linux, it will be ethX, where 'X' is a number.
(default eth0): enp3s0

It Prompts like Do you want the link to come up on demand, or stay up continuously?

Do you want the link to come up on demand, or stay up continuously?
If you want it to come up on demand, enter the idle time in seconds
after which the link should be dropped.  If you want the link to
stay up permanently, enter 'no' (two letters, lower-case.)
NOTE: Demand-activated links do not interact well with dynamic IP
addresses.  You may have some problems with demand-activated links.
Enter the demand value (default no): no


Give the DNS server address1(  and  DNS server address2(  and press Enter.

Please enter the IP address of your ISP's primary DNS server.
If your ISP claims that 'the server will provide dynamic DNS addresses',
enter 'server' (all lower-case) here.
If you just press enter, I will assume you know what you are
doing and not modify your DNS setup.
Enter the DNS information here:
Please enter the IP address of your ISP's secondary DNS server.
If you just press enter, I will assume there is only one DNS server.
Enter the secondary DNS server address here:

Type your password carefully and press Enter and  Retype your password.





Please enter 'yes' (three letters, lower-case.) if you want to allow
normal user to start or stop DSL connection (default yes): yes

Choose the firewall type 0.


Please choose the firewall rules to use.  Note that these rules are
very basic.  You are strongly encouraged to use a more sophisticated
firewall setup; however, these will provide basic security.  If you
are running any servers on your machine, you must choose 'NONE' and
set up firewalling yourself.  Otherwise, the firewall rules will deny
access to all standard servers like Web, e-mail, ftp, etc.  If you
are using SSH, the rules will block outgoing SSH connections which
allocate a privileged source port.

The firewall choices are:
0 - NONE: This script will not set any firewall rules.  You are responsible
          for ensuring the security of your machine.  You are STRONGLY
          recommended to use some kind of firewall rules.
1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation
2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway
                for a LAN
Choose a type of firewall (0-2): 0

If you want this connection at boot time type Yes or don’t want to connect at boot time type no and press Enter. After completed you will the settings

summary report

After it ask to Accept these settings and adjust configuration files (y/n)? input y and press enter.Reboot the system.

check pppoe connection ststus by using ip address show command or check configuration by using ifconfig ppp0 command

To enable the connection manually edit the  file /etc/sysconfig/network-scripts/ifcfg-ppp0 and set DEMAND=yes

To connect  it manually type #ifup ppp0

To disconnect it manually type #ifdown pppo