Cleaning the Dude Database

So as installs of the Dude v4beta are aging they are experiencing some database issues. This is due to a 2gig limit of the SQL version embedded with the Dude. So, if your dude database is crashing, complaining about being full, or just plain running slow it may be time for a cleaning. You can easily verify this by looking in the dude/data and at the “dude” db file. If this is around 2 gig it’s time for a cleaning.

To start you will need SQLLite for your version of Windows. These are available from Simply get the precompiled binary for your OS. For ease of sake Put your SQLite3 .exe in the same director as your dude database. This makes commands much simpler.

Follow these steps to clean the database:

1. Stop Dude service
Make sure to kill the dude process. Simply closing out of it does not fix. I had to go into task manager and end “dude.exe”
2. Dump DB to text with SQLite. (echo .dump | sqlite3.exe dude.db > dude.sql)
3. Rename dude.db, delete any dude.db-journal and dude.viw files. Something like dude.db.old
4. Start Dude service, this should create a new, blank dude.db
5. Stop Dude service
6. Open the dude.sql you created in step 2. Delete everything from dude.sql except for the lines that say INSERT INTO “objs” (including the lines that create the tables and indexes and stuff, just the INSERT INTO “objs” lines should be left)
7. Open dude.db with SQLite and delete everything from the objs table (DELETE FROM objs;)
8. Read old objs values into new DB (.read dude.sql)
9. Start Dude service

20,000 records took me a few hours to read back in. Just let it run. If you are curious on progress have the window open with the dude.db file. You should see the size of it growing during the read process.

Syncinjectors and PMP450i

This was posted to the AFMUG mailing list from Forrest at Packetflux. Applies to folks with PMP450i and SyncInjectors.

We have recently become aware of a potential issue when using a SyncInjector with a PMP450i. The short version of this issue is that with certain cable runs (mostly longer ones), a PMP450i will refuse to accept the sync from the SyncInjector as valid, even though the pulse is perfectly valid and should be accepted by the PMP450i.

Currently, there are two ways this can be fixed. Since the pulse is valid, but just not recognized as valid by the currently shipping PMP450i firmware, Cambium could fix this in software. I believe they are currently investigating this as an issue, and I honestly expect them to release a fix assuming it isn’t a major issue to do so. If this happens, it should address all of the existing SyncInjectors in the field which our customers may want to use in the future with a a PMP450i.

The second way to fix this issue is for us to modify our sync pulse slightly so that it is in line with what the PMP450i is expecting. Because this modification has some additional benefits beyond better interoperability with the current PMP450i firmware (such as the modified pulse being less likely to induct noise into adjoining cables), we have decided to proceed down this path as well.

During the next week or so, we will begin shipping Revision I0 of our Gigabit SyncInjector Product. The first of these are currently working their way through our assembly line. This version contains improved support for voltages above 58V and also the waveform modification mentioned above. It should be functionally identical to the earlier Revision H0 SyncInjectors. It is not our intention to update our non-gigabit injectors at this time.

If you are currently having problems with sync over power on a Gigabit SyncInjector and a PMP450i, please send an email into and we will work with you to ensure you have hardware which will work with your hardware.

Mikrotik GPON

The GPON module allows any RouterBOARD device to be used for Fiber to Home installations without any special modems or software. A plug and play solution means you simply plug it into your device, and no special configuration is needed. It is supported by all our SFP products, with any RouterOS version – all configuration will be done on the ISP side. The GPON ONU integrates GPON OMCI Stack and is fully compliant with ITU-T G.984 standards. The ONU is in a standardized MSA SFP form-factor and is designed to simply plug into a standard SFP port in your router. The product provides a pluggable GPON ONU interface for networking equipment with an uplink SFP receptacle enabling these devices to be deployed in GPON networks for FTTx, business services, and wireless backhaul applications.


Transit, peer, downstream..what do they all mean?

As a service provider you have a mountain of terms to deal with. As you dive into the realm of BGP, you will hear many terms in regards to peers.  Knowing their names AND your definition of them will serve you well.  I emphasized the and in the last sentence because many people have different definitions of what these terms means. This can be due to how long they have been dealing with networks, what they do with them, and other such things.  For example, many content providers use the term transit differently than an ISP.  So, let’s get on to it.

Transit or upstream
This is what you will hear most often.  A transit peer is someone who you go “through” in order to reach the internet.  You transit their network to reach other networks.  Many folks use the term “upstream provider” when talking about someone they buy their internet from.

Someone who is “downstream” is someone  you are providing Internet to.  They are “transiting” your network to reach the Internet.  This is typically someone you are selling Internet to.

This is the term which probably needs the most clarification when communicating with others about how your BGP is setup.  A peer is most often used as a generic term, much like Soda (or pop depending on where you are from). For example someone could say:
“I have a peer setup with my upstream provider who is Cogent.” This is perfectly acceptable when used with the addition of “my upstream provider”.  Peers are often referred to as “neighbors” or “BGP neighbors”.

Local or Private Peer
So what is a local peer? A local peer is a network you are “peering” with and you are only exchanging routes which are their own or their downstream networks.  A local peer usually happens most often at an Internet Exchange (IX) but can happen in common points where networks meet. The most important thing that defines a local peer is you are not using them to reach IP space which is not being advertised form their ASN.   Your peering relationship is just between the two of you. This gets a little muddy when you are peering on an IX, but thats being picky.

I have trained myself to qualify what I mean by a peer when talking about them. I will often say a “transit peer” or a “local peer”. This helps to add a little bit of clarity to what you mean.

Why is this all important? For one, it helps with keeping everyone on the same page when talking about peering.  I had a case a few weeks ago where a Content provider and I wasted configuration time because our definition of transit was different.  Secondly, you want to be able to classify your peers so you can apply different filter rules to them. For example, with a downstream peer you only want to accept the IP space they have shown you which is their own.  That way you are not sending your own transit traffic over their network. This would be bad.  However, if you are accepting full routes from your transit provider, you want your filters to accept much more IP than a downstream provider. So if you have a team being able to be on the same page about peers will help when it comes to writing filters, and how your routers “treat” the peer in terms of access lists, route filters, etc.