To be fair, in CT ... only type A and B starports were "piracy banished" from the potential encounters while maneuvering in N-space (such as between world and jump point, for example). Everything else (starports C-X) could potentially have Random Encounter™ results that would result in an attempt at piracy. (LBB2.81, p35)
LBB2.77, p36 did something ... very different ... which made it possible to have encounters with pirates EVERYWHERE
except at type E-X starports ...
This earlier take on things has some curious implications.
- Type A starport: 2D=6 roll means pirate encounter
- Type B starport: 2D=8 roll means pirate encounter
- Type C starport: 2D=10 roll means pirate encounter
- Type D starport: 2D=11 roll means pirate encounter
- Type E starport: 2D=11-12 means a Free Trader ... all other results are No Encounter
- Type X starport: No Encounter is only possible result
In other words, if a Free Trader wants to avoid any and all risks of piracy in LBB2.77, you need to be plying routes among type E (or X) starports exclusively ... since everywhere else could mean a pirate encounter is possible.
Wait ... hold on ...

What's a Type C Cruiser ...
LBB2.77, p19-20:
So ... basically an earlier take on the Type C Mercenary Cruiser (LBB3.81, p20):
I could certainly understand Pirates being more common in more populous places, but only to a point. There needs to be enough traffic to support brigandage, but not so much that it merits routine, or dedicated patrol.
Pirate encounters in Both '77 and '81 are a little odd, in '81 the presence of a scout or naval base increase the chance of encountering pirates and in '77 a better starport increases the odd of a pirate encounter.
The only reason pirate encounters don't occur at class "A" and "B" starports in '81 is because they are simply not present on the table, but at "C" and worse starports the presence of a scout or naval base gives a +DM and increases the odd of a pirate encounter.
Personally between the two I prefer the '77 approach, because it is a simple chart, rather than a table for each type of Starport,
A better approach would be to place the "pirate" encounter at the top of the table, which would reduce the odds of encoutering pirates, and make the odd decrease as modifiers are added.

With this change the odds of a pirate encounter drop to:
- Type A starport: 2D=3 roll means a pirate encounter (5.6%)
- Type B starport: 2D=5 roll means a pirate encounter (11.1%)
- Type C starport: 2D=7 roll means a pirate encounter (16.79%)
- Type D starport: 2D=8 roll means a pirate encounter (13.9%)
- Type E starport: 2D=11 roll means a pirate encounter (5.6%)
- Type X starport: No pirate encounter
Which I like very much, bigger Starports mean less chance of Pirates, but so do backwater, low traffic systems, with small or no Starports.
Even a Class "A" is not completely safe from Pirates, but this does solve the problem of having more Pirates at better ports.

If you also add Modifiers for Scout and Naval base you can completely suppress Piracy at class "A" and "B" Starbases, but the odds of piracy increase at Class "D" and worse Starports.
For example a Class "D" Starport the Odds of a Pirate Encouter are:
- LBB 2 '77 5.6%
- LBB 2 '77 Modified 13.9%
- LBB 2 '77 Mod + Scout 16.7%
- LBB 2 '77 Mod + Naval 13.9%
- LBB 2 '77 Mod + Both 11.1%

I guess you could make the argument that the bases are there to address the Piracy, Or add a "Piracy Suppression" roll, instead of a modifier, 8+ for Scouts, 6+ for Naval, and 4+ for Both.