Anime4000 / RTL960x

Hacking V2801F, TWCGPON657 & DFP-34X-2C2 GPON ONU SFP Stick to suite your ISP Fiber
The Unlicense
617 stars 110 forks source link

new version #254

Closed alexojegu closed 2 weeks ago

alexojegu commented 7 months ago

New firmware version for ODI DFP-34X-2C2 obtained in https://github.com/Anime4000/RTL960x/issues/248#issuecomment-1967668778.

With this version of SFU, the VLAN translation based on ExtVlanTagOperCfgData works correctly, at least in my case.

Anime4000 commented 7 months ago

before pushing, we currently need to verify it's stability and safety, in 3 to 6 month after no issue among existing SFP host device, I'll merge it

we found a lot of change and some command become obsolete/no effect, this also need to documented

I wish you also try the fw in long run to see if any issue a long the way...

alexojegu commented 7 months ago

before pushing, we currently need to verify it's stability and safety, in 3 to 6 month after no issue among existing SFP host device, I'll merge it

Seems like a good idea.

we found a lot of change and some command become obsolete/no effect, this also need to documented

I am new to FTTH before using HFC. For it to work with my ISP I only need to change the PLOAM (hexadecimal with non-printable characters) so I haven't tried many commands.

I wish you also try the fw in long run to see if any issue a long the way...

For now everything seems to work well, the speed is correct and I have not noticed any interruptions. But if you detect any problem, please tell me.

It's a shame that ODI didn't update the version of Dropbear in this firmware to use modern algorithms/ciphers.

Anime4000 commented 6 months ago

It's a shame that ODI didn't update the version of Dropbear in this firmware to use modern algorithms/ciphers.

Indeed, perhaps telnet is good enough?

alexojegu commented 6 months ago

Yes, I am currently using telnet from the router. But from the PC today it is not so easy to find a telnet client, in ArchLinux it is necessary to install all inetutils.

And if it can use SSH, let it be with an updated version.

Anime4000 commented 6 months ago

I have compared with latest V1.1.6-240202 vs previous V1.0-220903 firmware

On latest firmware, I can't use VLAN 400 as MIB 84 table below: image

I have set proper slot and feature bits:

flash set OMCI_VEIP_SLOT_ID 14
flash set OMCI_CUSTOM_ME 65792

anything from 0xe (VEIP) are not working

can you show your omcicli mib get 84 ?

alexojegu commented 6 months ago

My omcicli mib get 84:

# omcicli mib get 84
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
VlanTagFilterData
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
=================================
EntityID: 0x1102
FilterTbl[0]: PRI 0,CFI 0, VID 519
FwdOp:  0x10
NumOfEntries: 1
=================================
=================================
EntityID: 0x1103
FilterTbl[0]: PRI 0,CFI 0, VID 3
FwdOp:  0x10
NumOfEntries: 1
=================================
=================================
EntityID: 0x110b
FilterTbl[0]: PRI 0,CFI 0, VID 3
FwdOp:  0x10
NumOfEntries: 1
=================================

I don't know if it's related but on my router I don't use VLAN 519, I use VLAN 6, this version does the same translation as my ISP's original router. I imagine based on omcicli mib get 171 (Specifically on INDEX 1 and INDEX 2. I don't know what INDEX 3, INDEX 4 and INDEX 5 are for, perhaps for clients who have contracted IPTV):

# omcicli mib get 171
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ExtVlanTagOperCfgData
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
=================================
EntityId: 0x101
AssociationType: 2
ReceivedFrameVlanTagOperTableMaxSize: 0
InputTPID: 0x8100
OutputTPID: 0x8100
DsMode: 0
ReceivedFrameVlanTaggingOperTable
INDEX 0
Filter Outer   : PRI 15,VID 4096, TPID 0
Filter Inner   : PRI 8,VID 3, TPID 5, EthType 0x00
Treatment Outer   : PRI 15,VID 0, TPID 0, RemoveTags 1
Treatment Inner   : PRI 5,VID 3, TPID 2
INDEX 1
Filter Outer   : PRI 8,VID 6, TPID 5
Filter Inner   : PRI 8,VID 4096, TPID 0, EthType 0x00
Treatment Outer   : PRI 15,VID 0, TPID 0, RemoveTags 1
Treatment Inner   : PRI 1,VID 519, TPID 3
INDEX 2
Filter Outer   : PRI 15,VID 4096, TPID 0
Filter Inner   : PRI 8,VID 6, TPID 5, EthType 0x00
Treatment Outer   : PRI 15,VID 0, TPID 0, RemoveTags 1
Treatment Inner   : PRI 1,VID 519, TPID 2
INDEX 3
Filter Outer   : PRI 15,VID 4096, TPID 0
Filter Inner   : PRI 15,VID 0, TPID 5, EthType 0x00
Treatment Outer   : PRI 15,VID 0, TPID 0, RemoveTags 3
Treatment Inner   : PRI 15,VID 0, TPID 2
INDEX 4
Filter Outer   : PRI 14,VID 4096, TPID 5
Filter Inner   : PRI 14,VID 4096, TPID 0, EthType 0x00
Treatment Outer   : PRI 15,VID 0, TPID 0, RemoveTags 3
Treatment Inner   : PRI 15,VID 4096, TPID 3
INDEX 5
Filter Outer   : PRI 15,VID 4096, TPID 0
Filter Inner   : PRI 14,VID 4096, TPID 5, EthType 0x00
Treatment Outer   : PRI 15,VID 0, TPID 0, RemoveTags 3
Treatment Inner   : PRI 15,VID 4096, TPID 2
AssociatedMePoint: 0x101
DscpToPbitMapping:
    0x000000
    0x249249
    0x492492
    0x6db6db
    0x924924
    0xb6db6d
    0xdb6db6
    0xffffff

Parsed DscpToPbitMapping:
dscp: 0 => pbit: 0
dscp: 1 => pbit: 0
dscp: 2 => pbit: 0
dscp: 3 => pbit: 0
dscp: 4 => pbit: 0
dscp: 5 => pbit: 0
dscp: 6 => pbit: 0
dscp: 7 => pbit: 0
dscp: 8 => pbit: 1
dscp: 9 => pbit: 1
dscp: 10 => pbit: 1
dscp: 11 => pbit: 1
dscp: 12 => pbit: 1
dscp: 13 => pbit: 1
dscp: 14 => pbit: 1
dscp: 15 => pbit: 1
dscp: 16 => pbit: 2
dscp: 17 => pbit: 2
dscp: 18 => pbit: 2
dscp: 19 => pbit: 2
dscp: 20 => pbit: 2
dscp: 21 => pbit: 2
dscp: 22 => pbit: 2
dscp: 23 => pbit: 2
dscp: 24 => pbit: 3
dscp: 25 => pbit: 3
dscp: 26 => pbit: 3
dscp: 27 => pbit: 3
dscp: 28 => pbit: 3
dscp: 29 => pbit: 3
dscp: 30 => pbit: 3
dscp: 31 => pbit: 3
dscp: 32 => pbit: 4
dscp: 33 => pbit: 4
dscp: 34 => pbit: 4
dscp: 35 => pbit: 4
dscp: 36 => pbit: 4
dscp: 37 => pbit: 4
dscp: 38 => pbit: 4
dscp: 39 => pbit: 4
dscp: 40 => pbit: 5
dscp: 41 => pbit: 5
dscp: 42 => pbit: 5
dscp: 43 => pbit: 5
dscp: 44 => pbit: 5
dscp: 45 => pbit: 5
dscp: 46 => pbit: 5
dscp: 47 => pbit: 5
dscp: 48 => pbit: 6
dscp: 49 => pbit: 6
dscp: 50 => pbit: 6
dscp: 51 => pbit: 6
dscp: 52 => pbit: 6
dscp: 53 => pbit: 6
dscp: 54 => pbit: 6
dscp: 55 => pbit: 6
dscp: 56 => pbit: 7
dscp: 57 => pbit: 7
dscp: 58 => pbit: 7
dscp: 59 => pbit: 7
dscp: 60 => pbit: 7
dscp: 61 => pbit: 7
dscp: 62 => pbit: 7
dscp: 63 => pbit: 7
=================================

Should I set OMCI_VEIP_SLOT_ID to 14 and OMCI_CUSTOM_ME to 65792? or my current values may be correct:

# flash get OMCI_VEIP_SLOT_ID
OMCI_VEIP_SLOT_ID=255
# flash get OMCI_CUSTOM_ME
OMCI_CUSTOM_ME=65536

Could this be right for SFU? https://hack-gpon.org/pptp_veip/

ONTs will report VEIP or PPTP (Physical Path Termination Point) when MIB 11 or 329 is uploaded according to the type of the device. Only one VEIP is allowed in a HGU and VEIP is not available for SFU devices. OLTs determine the ONT type based on the ONT Type attribute in ME Capability.

alexojegu commented 6 months ago

This week I have lost Internet connection three times, the last one today. Rebooting the SFP stick recovers it.

Have you noticed anything similar?

Anime4000 commented 6 months ago

so far stick remain connected with the SFP host (RB5009, ROS 7.14) beside I can't use VLAN 400 (VoIP) which is bad, I need VLAN400 to work or downgrade last stable fw

alexojegu commented 6 months ago

Yeah, I have no problems with the SFP host (Turris Omnia, OpenWRT 23.05.2) I can always access via telnet or HTTP, it seems to lose the connection with the OLT.

I understand that it is not possible to get VLAN remapping with firmware 220923, to test.

Silly idea, have you tried:

flash set HW_CWMP_PRODUCTCLASS HGU
flash set OMCI_VEIP_SLOT_ID 14
flash set OMCI_CUSTOM_ME 65792
Anime4000 commented 6 months ago

Silly idea, have you tried:

flash set HW_CWMP_PRODUCTCLASS HGU
flash set OMCI_VEIP_SLOT_ID 14
flash set OMCI_CUSTOM_ME 65792

Yes I have, still didn't work, even change 0x10 to 0x02 FwdOp

alexojegu commented 6 months ago

Changing "Product Class" from the Web interface changes:

GPON_ONU_MODEL
HW_CWMP_PRODUCTCLASS
EPON_EXTONU_MODEL

I think the change of GPON_ONU_MODEL is a bug but I don't know if EPON_EXTONU_MODEL may have any relationship.

Or it may be better to try flash set DEVICE_TYPE 2 to set to hybrid.

In /proc/omci it shows veip but in my case it is empty, just like all the rest of the values...

Anime4000 commented 6 months ago

this flash set DEVICE_TYPE 2 I haven't tried it yet, perhaps I try it next time, waiting new PON Stick to arrive

crrodriguez commented 3 months ago

is the epic fail of OLT_MODE=3 fixed on this new releases ? or we still need to patch binaries ?

SkateWarp commented 2 months ago

is the epic fail of OLT_MODE=3 fixed on this new releases ? or we still need to patch binaries ?

This is a good question.

crrodriguez commented 2 months ago

is the epic fail of OLT_MODE=3 fixed on this new releases ? or we still need to patch binaries ?

This is a good question.

The answer is NO. it has not been fixed in recent firmwares.