In RouterOS, a PPPoE disconnection that is signaled as a “peer request” typically occurs when the peer (that is, the other end of the PPPoE connection, which is typically the ISP's PPPoE server) requests to terminate the session.
At the end of the article you will find a small test that will allow you assess the knowledge acquired in this reading
This may be due to several reasons, including:
1. Authentication issues
If there is a problem with the login credentials (username and password), the server may terminate the session.
2. Server Policy
The PPPoE server may have policies to disconnect sessions after a certain time or due to usage restrictions.
3. Configuration problems
Incorrect configurations on the client or server side can lead to disconnections. This may include timeout settings, MTU, or issues with PPPoE session negotiation.
4. Server maintenance or technical issues
The server could be undergoing maintenance or have technical issues causing disconnections.
5. Line quality or connection problems
Physical line problems or interference can cause disconnections. This can be especially common on DSL connections.
Diagnosis and solution
To diagnose and resolve this issue, you can try the following steps:
- Review credentials: Make sure the username and password are correct.
- Verify the configuration of the MikroTik and the PPPoE server: Make sure all settings are correct and meet the service provider's requirements.
- Review system logs: MikroTik RouterOS provides detailed logs that can provide more information about the cause of the disconnection. Access the logs to find specific messages that may indicate the problem.
- Consult your internet service provider: There may be known information or issues on your end that are causing the disconnections.
If the problem persists after these steps, it may be helpful to perform additional tests, such as changing the hardware or testing the connection in a different environment, to rule out possible causes.
What are the recommended values for MRU and MTU?
On a PPPoE (Point-to-Point Protocol over Ethernet) connection, the recommended values for the MRU (Maximum Receive Unit) and MTU (Maximum Transmission Unit) may vary depending on the specific environment and the requirements of the Internet service provider.
However, there are some general practices you can follow:
MRU (Maximum Receive Unit)
- MRU refers to the maximum packet size that the connection can receive. In the context of PPPoE, this value is often configured to be equal to or slightly greater than the MTU to accommodate the overhead of PPPoE encapsulation.
- A common value for MRU in PPPoE connections it is 1492 bytes, considering that the standard MTU for Ethernet is 1500 bytes and PPPoE has an overhead of 8 bytes. However, this value can be adjusted based on ISP recommendations or to optimize network performance.
MTU (Maximum Transmission Unit)
- MTU refers to the maximum packet size that the connection can transmit. On PPPoE connections, the MTU is usually lower than on normal Ethernet connections due to the overhead of PPPoE.
- A value recomendado for MTU in PPPoE connections it is 1480 to 1492 bytes. The exact value may depend on several factors, including the type of network traffic and ISP specifications. The value of 1492 bytes is commonly used to avoid packet fragmentation on the network.
Additional Adjustments
- MSS (Maximum Segment Size): In addition to the MTU and MRU, it is also important to consider the MSS setting, especially for TCP over PPPoE connections. The MSS is usually the MTU minus 40 bytes (for the IP and TCP header), which in the case of an MTU of 1492, would result in an MSS of 1452 bytes. Correctly configuring the MSS can help avoid TCP packet fragmentation problems.
Additional considerations
- Specific ISP: It's always a good idea to check with your Internet Service Provider for their specific recommendations. Some ISPs may have unique network configurations that require specific adjustments to the MRU and MTU values.
- Try and failure: Sometimes the optimal settings for MRU and MTU can be found through trial and error, adjusting values and monitoring network performance and the occurrence of problems such as packet fragmentation or problems with specific websites.
It is important to remember that incorrect MRU and MTU values can lead to problems such as packet fragmentation, packet loss, or an overall decrease in network efficiency, so making careful adjustments and extensive testing is crucial.
Configuration example in MikroTik
This example assumes that you already have a PPPoE client interface configured and that you only need to adjust these parameters:
/interface pppoe-client
set [find] add-default-route=yes use-peer-dns=yes \
mru=1492 mtu=1492 name=pppoe-out1 \
user="your_user" password="your_password"
/ip firewall mangle
add action=change-mss chain=forward new-mss=1452 \
protocol=tcp tcp-flags=syn out-interface=pppoe-out1 passthrough=yes
add action=change-mss chain=forward new-mss=1452 \
protocol=tcp tcp-flags=syn in-interface=pppoe-out1 passthrough=yes
Example breakdown:
/interface pppoe-client set [find]
Find the existing PPPoE client interface and apply the following settings.
- add-default-route=yes: Add a default route through this interface.
- use-peer-dns=yes: Uses the DNS server provided by the PPPoE peer.
- mru=1492: Set the Maximum Receive Unit to 1492 bytes.
- mtu=1492: Set the Maximum Transmission Unit to 1492 bytes.
- name=pppoe-out1: Defines the name of the PPPoE interface (change it as appropriate to your configuration).
- user=”your_user”: Specifies the user name for PPPoE authentication.
- password=”your_password”: Specifies the password for PPPoE authentication.
/ip firewall mangle add action=change-mss
Add rules to the firewall mangle table to adjust the MSS of TCP packets with the SYN flag, to ensure that they do not exceed the maximum effective size allowed after PPPoE encapsulation.
- chain=forward: Applies the rule to packets that are being forwarded.
- new-mss=1452: Set the new MSS value to 1452 bytes.
- protocol=tcp: Applies the rule only to TCP packets.
- tcp-flags=syn: Applies the rule only to TCP packets with the SYN flag, which are connection initiation packets.
- out-interface=pppoe-out1: Apply the rule to packets going out on the pppoe-out1 interface (adjust based on the name of your PPPoE interface).
- in-interface=pppoe-out1: The second rule is similar but applies to incoming packets over the PPPoE interface.
- passthrough=yes: Allows the packet to be processed by additional rules after this one.
This is just a basic example. You will need to adjust the interface names, user and password values, and any other parameters specific to your network and requirements.
Also, it is important to test these changes in a controlled environment to ensure that they do not interrupt your Internet connection.
Brief knowledge quiz
What do you think of this article?
Do you dare to evaluate your learned knowledge?
Recommended books for this article
(Book) Networking with MikroTik RouterOS: A Practical Approach to Understanding and Implementing RouterOS
Study material for the MTCNA Certification Course, updated to RouterOS v7
MikroTik Fundamental Concepts Book, RouterOS v7
Study material for the MTCNA Certification Course, updated to RouterOS v7
Related Posts
- Layer 2 Misconfigurations: Hardware Offload Limitations on Multiple Bridges
- Layer 2 misconfigurations: LAG interfaces and load balancing
- Layer 2 Misconfigurations: Packet Flow with Hardware Offloading and MAC Learning
- Understanding the Concept of MTU at Layer 2 and Layer 3: Impacts and Considerations
- Bonding XOR (balance-xor) in MikroTik