OSPF over PPPOE connection

Hi

I am having a problem in establishing OSPF neighbor relationship between two routers over PPPOE link.

R1 ---------------R2  connected via fastethernet link. R1 is PPPOE client and R2 is server. R1 gets its IP from R2. Now R2 assigns R1 a "/32" IP from it's pool. When I try to run OSPF over this link I see R1 is not making a neighbor relationship for it has a /32 mask and doesnt consider R2 to be on same subnet. 

Here is the error I get on R1:

 

 R1#

*Oct  8 17:58:13.447: OSPF: Rcv pkt from 10.1.1.50, Dialer1, area 0.0.0.1 : src not on the same network

Where as R2 see R1 in Init state:

 

R2#sh ip ospf neighbor

Neighbor ID     Pri   State           Dead Time   Address         Interface

200.100.50.100    0   INIT/  -        00:00:36    10.1.1.1        Virtual-Access1.1

R2#

 

 

MTU of dialer has been adjusted to 1492 to match Virtual-access.

Here is R1s routing table:

 

Gateway of last resort is not set

 

    10.0.0.0/32 is subnetted, 2 subnets

C       10.1.1.1 is directly connected, Dialer1

C       10.1.1.50 is directly connected, Dialer1

R1#

 

 

Here is the related config:

Cisco IOS Software, 7200 Software (C7200-SPSERVICESK9-M), Version 12.4(6)T7

R1

 

interface Dialer1

 mtu 1492

 ip address negotiated

 encapsulation ppp

 dialer pool 1

 ppp pap sent-username A password 0 B

end

 

!

interface FastEthernet2/0

 no ip address

 duplex half

 pppoe enable group global

 pppoe-client dial-pool-number 1

 

!

vpdn enable

!

 

 

router ospf 1

 log-adjacency-changes

 network 10.0.0.0 0.255.255.255 area 1

!

 

 

R2



!

interface Virtual-Template12

 ip address 10.1.1.50 255.255.255.0

 no peer neighbor-route

 peer default ip address dhcp-pool cisco

 ppp authentication pap

end


!



no ip dhcp use vrf connected

ip dhcp excluded-address 10.1.1.50

!

ip dhcp pool cisco

   network 10.1.1.0 255.255.255.0

!

!

vpdn enable

!


username A password 0 B

!

!

!

!

bba-group pppoe global

 virtual-template 12

!


interface FastEthernet2/0

 no ip address

 duplex half

 pppoe enable group global

!


router ospf 1

 log-adjacency-changes

 network 10.0.0.0 0.255.255.255 area 1

!





 

 

Any one able to advise on how can I have OSPF working here please? 

Comments

  • just a thought - it could be not related

     

    but you can try putting this on both routers' interfaces and see if it brings the ospf neighbor up - "ip ospf network point-to-point"

     

    Hi

    I am having a problem in establishing OSPF neighbor relationship between two routers over PPPOE link.

    R1 ---------------R2  connected via fastethernet link. R1 is PPPOE client and R2 is server. R1 gets its IP from R2. Now R2 assigns R1 a "/32" IP from it's pool. When I try to run OSPF over this link I see R1 is not making a neighbor relationship for it has a /32 mask and doesnt consider R2 to be on same subnet. 

    Here is the error I get on R1:

     

     R1#

    *Oct  8 17:58:13.447: OSPF: Rcv pkt from 10.1.1.50, Dialer1, area 0.0.0.1 : src not on the same network

    Where as R2 see R1 in Init state:

     

    R2#sh ip ospf neighbor

    Neighbor ID     Pri   State           Dead Time   Address         Interface

    200.100.50.100    0   INIT/  -        00:00:36    10.1.1.1        Virtual-Access1.1

    R2#

     

     

    MTU of dialer has been adjusted to 1492 to match Virtual-access.

    Here is R1s routing table:

     

    Gateway of last resort is not set

     

        10.0.0.0/32 is subnetted, 2 subnets

    C       10.1.1.1 is directly connected, Dialer1

    C       10.1.1.50 is directly connected, Dialer1

    R1#

     

     

    Here is the related config:

    Cisco IOS Software, 7200 Software (C7200-SPSERVICESK9-M), Version 12.4(6)T7

    R1

     

    interface Dialer1

     mtu 1492

     ip address negotiated

     encapsulation ppp

     dialer pool 1

     ppp pap sent-username A password 0 B

    end

     

    !

    interface FastEthernet2/0

     no ip address

     duplex half

     pppoe enable group global

     pppoe-client dial-pool-number 1

     

    !

    vpdn enable

    !

     

     

    router ospf 1

     log-adjacency-changes

     network 10.0.0.0 0.255.255.255 area 1

    !

     

     

    R2



    !

    interface Virtual-Template12

     ip address 10.1.1.50 255.255.255.0

     no peer neighbor-route

     peer default ip address dhcp-pool cisco

     ppp authentication pap

    end


    !



    no ip dhcp use vrf connected

    ip dhcp excluded-address 10.1.1.50

    !

    ip dhcp pool cisco

       network 10.1.1.0 255.255.255.0

    !

    !

    vpdn enable

    !


    username A password 0 B

    !

    !

    !

    !

    bba-group pppoe global

     virtual-template 12

    !


    interface FastEthernet2/0

     no ip address

     duplex half

     pppoe enable group global

    !


    router ospf 1

     log-adjacency-changes

     network 10.0.0.0 0.255.255.255 area 1

    !





     

     

    Any one able to advise on how can I have OSPF working here please? 

     

  • I would also add "no peer neighbor-route to your Dialer 1

    Here is a working config from my current lab: Load it up and test.

    R1 2691 R6 7206VXR

    R1

    vpdn enable
    !
    vpdn-group R1-R2
     request-dialin
      protocol pppoe

    interface Dialer1
     ip address dhcp
     ip mtu 1492
     encapsulation ppp
     dialer pool 1
     no peer neighbor-route
     ppp chap hostname james
     ppp chap password 0 james
    !
    interface FastEthernet0/1
     no ip address
     pppoe enable
     pppoe-client dial-pool-number 1
    !
    router ospf 192
     router-id 192.168.1.1
     log-adjacency-changes
     network 192.168.1.1 0.0.0.0 area 0


    ------------------------------------------------------
    R6

    username james password james
    !
    ip dhcp excluded-address 192.168.1.2 192.168.1.254
    !
    ip dhcp pool cisco
       network 192.168.1.0 255.255.255.0
    !
    vpdn enable
    !
    bba-group pppoe R1-R2
     virtual-template 1
     service profile R1-R2
     sessions auto cleanup
    !
    interface FastEthernet0/1
     pppoe enable group R1-R2
    !
    interface Virtual-Template1
     ip address 192.168.1.6 255.255.255.0
     no peer neighbor-route
     peer default ip address dhcp
     ppp authentication chap
    !
    router ospf 192
     router-id 192.168.1.2
     log-adjacency-changes
     network 192.168.1.6 0.0.0.0 area 0

    Hope that helps

    James
     




    On 8 Oct 2008, at 18:57, adroit wrote:

    Hi

    I am having a problem in establishing OSPF neighbor relationship between two routers over PPPOE link.

    R1 ---------------R2  connected via fastethernet link. R1 is PPPOE client and R2 is server. R1 gets its IP from R2. Now R2 assigns R1 a "/32" IP from it's pool. When I try to run OSPF over this link I see R1 is not making a neighbor relationship for it has a /32 mask and doesnt consider R2 to be on same subnet. 

    Here is the error I get on R1:


     R1#

    *Oct  8 17:58:13.447: OSPF: Rcv pkt from 10.1.1.50, Dialer1, area 0.0.0.1 : src not on the same network


    MTU of dialer has been adjusted to 1492 to match Virtual-access.

    Here is R1s routing table:


    Gateway of last resort is not set

     

        10.0.0.0/32 is subnetted, 2 subnets

    C       10.1.1.1 is directly connected, Dialer1

    C       10.1.1.50 is directly connected, Dialer1

    R1#


     

    Here is the related config:

    Cisco IOS Software, 7200 Software (C7200-SPSERVICESK9-M), Version 12.4(6)T7

    R1


    interface Dialer1

     mtu 1492

     ip address negotiated

     encapsulation ppp

     dialer pool 1

     ppp pap sent-username A password 0 B

    end


    !

    interface FastEthernet2/0

     no ip address

     duplex half

     pppoe enable group global

     pppoe-client dial-pool-number 1


    !

    vpdn enable

    !



    router ospf 1

     log-adjacency-changes

     network 10.0.0.0 0.255.255.255 area 1

    !



    R2
    !
    interface Virtual-Template12
     ip address 10.1.1.50 255.255.255.0
     no peer neighbor-route
     peer default ip address dhcp-pool cisco
     ppp authentication pap
    end
    !
    no ip dhcp use vrf connected
    ip dhcp excluded-address 10.1.1.50
    !
    ip dhcp pool cisco
       network 10.1.1.0 255.255.255.0
    !
    !
    vpdn enable
    !
    username A password 0 B
    !
    !
    !
    !
    bba-group pppoe global
     virtual-template 12
    !
    interface FastEthernet2/0
     no ip address
     duplex half
     pppoe enable group global
    !
    router ospf 1
     log-adjacency-changes
     network 10.0.0.0 0.255.255.255 area 1
    !

     

    Any one able to advise on how can I have OSPF working here please? 




    Internetwork Expert - The Industry Leader in CCIE Preparation
    http://www.internetworkexpert.com

    Subscription information may be found at:
    http://www.ieoc.com/forums/ForumSubscriptions.aspx

  • Cheers Guys

     

    It worked... So the problem was "ip address negotiated"  command. As far as I could understand, when I use "ip add negotiated" my router picks a SM of /32 hence can't make ospf neighbor. But when I use "ip address dhcp" my router picked SM configured on server under ip dhcp pool config.

     

    Many Thanks for your help.

    Cheers

    Kam

  • if we do not use "ip address dhcp"  how can resolve the problem?thank you

  • use ios like 12.4(15)t or greater and u ll do it ,,
    i was stuck to it for a long than i tried on gns and it works , and yeah do change the mtu size to 1492 on the server side and add ip ospf mtu ignore in client side dialer interface

    :D

    :D

  • if we do not use "ip address dhcp"  how can resolve the problem?thank you

    Hi,

    In OSPF, you cannot resolve this issue. But in RIP you can resolve this issue using interface command "no validate-update-source"..

    The problem of using "ip address negotiated on the PPPoE client side is that it will use IPCP to negotiate the IP address and will always install the PPPoE Server's IP address and its own IP address as /32 routes. It doesn't matter what mask is configured on the DHCP pool on the Server side, the Client will still install its IP address as /32. 

    Therefore, the problem can only be solved using "ip address dhcp" on the Client side so that IP negotiation will be handled through DHCP and give the correct mask.

     

    HTH,

     


  • if we do not use "ip address dhcp"  how can resolve the problem?thank you

    Hi,

    In OSPF, you cannot resolve this issue. But in RIP you can resolve this issue using interface command "no validate-update-source"..

    The problem of using "ip address negotiated on the PPPoE client side is that it will use IPCP to negotiate the IP address and will always install the PPPoE Server's IP address and its own IP address as /32 routes. It doesn't matter what mask is configured on the DHCP pool on the Server side, the Client will still install its IP address as /32. 

    Therefore, the problem can only be solved using "ip address dhcp" on the Client side so that IP negotiation will be handled through DHCP and give the correct mask.

     

    HTH,

    Carlos
  • Surely ospf point to point does not check the network mask?

  • Surely ospf point to point does not check the network mask?

    When enabling OSPF, the PPPoE Server's virtual-template interface and PPPoE client's Dialer interface are by Default OSPF network-type point-to-point. 

    The OSPF adjacency rule of having to match the subnet and subnet mask is NOT affected by the Ospf network-type.

    OSPF Hello paramaters such as Area#, Area-type, Subnet, Subnet mask, hello interval, dead interval needs to match or else the neighbors will be stuck to INIT state. 

    The only solution to this is not to use "ip address negotiated" (IPCP) for the PPPoE Client, but rather "ip address dhcp" to be able to get the correct mask via dhcp.

    Regards,

    Carlos

  • I need to lab it, I'm pretty sure I got it working before

     

    Does the RFC not state the network masks are not checked if the network type is point to point

  • You can ge the OSPF neighbor relationships to form is you skip IPCP and DHCP and use IP unnumbered on the virtual-template and dialer interfaces.

  • try in ios 12.4(15)t or greater

    it works fine there with ipcp , i have done it ..

  • I had this working with IPCP so it is possible. For point-to-point the mask should not have to match.

    R2#sh ip int s0/0 | i Internet
      Internet address is 12.12.12.2/25
    R2#sh ip ospf nei

    Neighbor ID     Pri   State           Dead Time   Address         Interface
    12.12.12.1        0   FULL/  -        00:00:36    12.12.12.1      Serial0/0
    R2#sh ip ospf int brief
    Interface    PID   Area            IP Address/Mask    Cost  State Nbrs F/C
    Se0/0        1     0               12.12.12.2/25      64    P2P   1/1

    R1#sh ip int s0/0 | i Internet
      Internet address is 12.12.12.1/24
    R1#sh ip ospf nei

    Neighbor ID     Pri   State           Dead Time   Address         Interface
    12.12.12.2        0   FULL/  -        00:00:37    12.12.12.2      Serial0/0
    R1#sh ip ospf int brief
    Interface    PID   Area            IP Address/Mask    Cost  State Nbrs F/C
    Se0/0        1     0               12.12.12.1/24      64    P2P   1/1

  • Same here - the trick is to use the network type of P2P, which does check for the subnet mask. 

  • the command :

    ip ospf network point-to-point will not do anything u can skip that command

    it works when the subnets not mach

    for example

    i have one point as
    192.168.10.1 255.255.255.0 and other as 192.168.10.2 255.255.255.252

    that place this command do wonders

    bt in this secnario both the ips will be with subnet mask /32

    do check the updations on ios 12.4(10) to 12.4(15) u can see there that this is a special case of ospf over pppoe where ospf ignore the matching subnets , u can make neighbourship even if both ip's are not of same class , but the mandatory condition is ios version ..


  • I will lab this up on Monday on my real rack. I have only labbed this up on GNS3 with 12.4(6)T and as far as this IOS version it's not working with IPCP.

    I overlooked the post of mohit_bhall saying it works on 12.4(15)T and higher..

    Thanks,

  • the command :

    ip ospf network point-to-point will not do anything u can skip that command

    it works when the subnets not mach

    for example

    i have one point as
    192.168.10.1 255.255.255.0 and other as 192.168.10.2 255.255.255.252

    that place this command do wonders

    bt in this secnario both the ips will be with subnet mask /32

    do check the updations on ios 12.4(10) to 12.4(15) u can see there that this is a special case of ospf over pppoe where ospf ignore the matching subnets , u can make neighbourship even if both ip's are not of same class , but the mandatory condition is ios version ..

    Thanks mohit_bhalla,

    I overlooked your post. Now it's clear that the problem is that it doesn't work on lower IOS versions.

  • man where did you find this image? the ones i have in my database do not support PPPoE

  • thats easy to figure out , aneway i tried it with real hardware too, in 2600 series and 1800 series too , all working very fine 
    just image should be higher that 12.4(10)

     

Sign In or Register to comment.