Jagged Thoughts | Dr. John Linwood Griffin

September 25, 2012

Better living through IPv6-istry

Filed under: Opinions,Work — JLG @ 12:00 AM

There have been many, many words written about the IPv4-to-IPv6 transition — probably around 340 undecillion words at this point — but perhaps my favorite words came in a recent Slashdot comment by AliasMarlowe:

I believe in the incremental approach to updates; it’s so much safer and usually easier.
So it’s going to be IPv5 for me, while you suckers make a mess of IPv6!

I’ve long been a fan of IPv6.  Deploying IPv6 has the obvious benefit of solving the IPv4 address exhaustion problem, as well as making it easier to do local subnetting, and site network architecture, and to some degree internet-scale routing.

But perhaps the greatest benefit of deploying IPv6 is the restoration of end-to-end transparency.  IPv6 obviates the need for network address translation (NAT).  With IPv6, when your Skype application wants to initiate a call to my Skype application, the apps can address each other directly without relying on hole punching, third-party relaying, or other “clever” NAT-circumvention techniques.

(End-to-end addressing may sound unimportant, but if we could restore this critical Internet design goal to practice then we could party like it’s 1979!)

I recently spoke with some of TCS’s computer network operations students about security considerations for IPv6 deployments.  They were surprised when I claimed that NAT is not needed in an IPv6 security plan; several students commented that the NAT on their home network router was the only thing protecting their computers from the evils of the Internet.

A common misperception!  There are generally two functions performed by your home network router (or your corporate upstream router, if so configured):

  1. Firewalling / stateful packet inspection.  This is a security function.
  2. IP masquerading / network address [and port] translation.  This is not a security function; it simply allows all the devices on your internal network to share a single external network (IP) address.

With IPv6 you can (and should) still deploy inline firewall appliances to perform function #1.  But with the plethora of available addresses in IPv6 — 18,446,744,073,709,551,616 globally routable addresses per standard local subnet — there is no overt need for masquerading.

Of course, masquerading provides ancillary benefits:  It somewhat hinders external traffic analysis, such as network mapping, by obfuscating the internal source and destination of traffic.  Combining masquerading with private IPv4 addressing also prevents internal addresses from being externally routable.

But similar benefits can be realized in IPv6 without masquerading and therefore without losing the benefits of end-to-end transparency.  For example IPv6 privacy extensions can obfuscate your internal network architecture and IPv6 unique local addresses can be used to isolate systems that shouldn’t be visible on external networks.

September 23, 2012


Filed under: Aviation — JLG @ 1:41 AM

The weather cooperated (somewhat) and I indeed got to fly last weekend for my second solo cross-country flight:

JLG cross-country solo over Newport, RI, September 16, 2012

By the end of the flight I was positively giddy; as I walked back to my car I texted Evelyn the above picture with the caption “I LOVE FLYING”.  Almost all of my flight training has left me grinning from ear-to-ear, but this flight was by far the most fun I’ve had yet.

(Almost all of my flight training has left me grinning:  The required night landings weren’t nearly as much fun as I thought they would be, especially since my instructor chose to test my performance under pressure — asking me to fly an unfamiliar approach to the runway, while simulating a landing light failure, all during a rushed and chaotic situation — and I didn’t handle it particularly gracefully.  But “trial by fire” was the whole point, and I feel that I learned from the experience and am better prepared to execute emergency landings at night.  I also did manage to land the airplane despite the chaos, though I’d drifted off the runway centerline and was still drifting as the wheels touched down.)

The cross-country flight was spectacular.  All the more so because I didn’t think I’d get to fly due to the weather:  There was a cloud layer (“ceiling”) around 4,000 feet along much of the route, well below the 5,000 foot minimum required by my flight school for cross-country flights.  Also, the surface winds were gusting to 16 knots at KBED and 18 knots at KGON, both above the 15-knot limit that my instructor chose for my original solo endorsement.  But my instructor waived both limits for the flight, citing his comfort level with how well I’ve been flying lately, and off I went at 3,000 feet.

It felt as though everything went right:

  • My navigation was great.  I chose to navigate primarily using VOR navigation, with dead reckoning as backup (following along on my aviation chart and looking for outside ground references to verify my position and course) and GPS as backup to the backup.  In the past my VOR navigation has been shaky, but this time it was rock solid — thanks to my instructor’s advice to set up the navigation radios before I even taxied the airplane, instead of hurriedly trying to dial them in when I need them.  My route was KBED to the GDM (Gardner, MA) VOR, to the PUT (Putnam, CT) VOR, to a landing at KGON (Groton, CT), thence direct to a landing at KEWB (New Bedford, MA), and back to KBED.
  • My landings were great.  Approaching KGON I twice asked the tower for a “wind check” to verify that the winds were still below the maximums to land; I was concerned both with the wind gusts and the “crosswind component” of the wind.  (Pilots prefer the wind to blow steadily and directly down the runway.  The winds at KGON were both gusty and at an angle to the runway; if the crosswind component of the gusts was greater than 8 knots then I was not authorized to land.)  I was prepared throughout the landing to abort if the winds started gusting, but ended up with a landing so smooth it felt as though there were no wind whatsoever.
  • The views were great.  Here are some pictures:

3,000 feet over Newport, RI

Wow.  Also:

2,500 feet over Waltham, MA (view towards Boston)


Boston, MA. Our house is off-frame to the right.


This weekend I passed my private pilot knowledge test, scoring 54 correct (90%) out of 60 questions.  (A passing score is 70% or above.)  The questions I missed were on the following topics:

  • Hand-propping an airplane.  Engines without electric starters require someone to go out and manually spin the propeller “old-school” to get the engine going.  Since I don’t do any hand-propping I hadn’t even read the section of the Airplane Flying Handbook that explains the recommended procedure (“Contact!” etc.)
  • Tri-color visual approach slope indicator (VASI).  Does a tri-color VASI use a green, amber, or white light to indicate that you are on the correct glideslope?  I answered white (I suppose I was thinking about a pulsating VASI) instead of the correct green.  A tri-color VASI doesn’t even have a white light!  I’m not sure there are any airports in the Northeast that still have a tri-color VASI in use, but if so I’d love to see one.  EDIT: There are two nearby!  Falmouth Airpark (5B6, Falmouth, MA) and Richmond Airport (08R, West Kingston, RI) both report tri-color VASIs in use.
  • Characteristics of stable air masses.  One of the neat things about learning to fly is that you learn a lot of arcane or obscure facts about weather systems, fog, etc., that generally are only going to be useful to you if you plan to fly through ugly weather.  Apparently I didn’t learn enough arcane or obscure facts; I missed two weather-related questions.
  • Dropping items from the airplane.  It turns out it’s totally legit to drop things from an airplane!  (I incorrectly answered that you are only allowed to do so in an emergency.)  FAR 91.15: “No pilot in command of a civil aircraft may allow any object to be dropped from that aircraft in flight that creates a hazard to persons or property. However, this section does not prohibit the dropping of any object if reasonable precautions are taken to avoid injury or damage to persons or property.”  During my post-exam review my instructor mentioned that he has returned car keys to his wife using this method.

So I’m inexorably closer to being done!  I have a couple of in-school checkrides coming up with another instructor — the fifth instructor I will have flown with during my flight training — and if the weather cooperates I could take the final FAA oral test and checkride as early as October 10.

September 10, 2012

Left-brained flying

Filed under: Aviation — JLG @ 11:30 PM

I’m almost finished with flight training for my private pilot certificate!  That’s actually a little disappointing, because I’ve been enjoying the training so much; I probably won’t fly nearly this much after the lessons are over.

Two weeks ago I performed one of my two required solo cross-country flights.  When I first heard about this requirement I hoped that cross-country meant a flight from Boston to Seattle (cross country) or even to Winnipeg (cross countries) but it turns out it just means, in the exciting parlance of Title 14 of the Code of Federal Regulations, Part 61.109(a)(5)(ii), simply:

one solo cross country flight of 150 nautical miles total distance, with full-stop landings at three points, and one segment of the flight consisting of a straight-line distance of more than 50 nautical miles between the takeoff and landing locations.

I’d also hoped that I would be able to pick the airports for my cross-country training flights, but that choice too is regulated, this time by the flight school.  For my first flight my instructor assigned one of two approved routes, in this case KBED-KSFM-KCON-KBED — Bedford, MA, to Sanford, ME, to Concord, NH, and back to Bedford.

(Astute readers will calculate that route as only covering 143 nautical miles.  Although that distance doesn’t meet the requirement above, it’s okay since the school requires students perform a minimum of two solo cross-country routes; the next one will be a 179-mile trip to Connecticut and back.  I suspect the school chose those airports for the first “solo XC” because SFM and CON are both non-towered airports that are easy to find from the air — meaning good practice and confidence-building for the student — as well as because the student has flown round-trip to SFM with an instructor at least once.)

The most memorable aspect of my first solo cross-country flight was that everything happened so quickly!  Without an instructor around to act as a safety net, I had an ever-present feeling that I was forgetting something or missing something:

  • Oh shoot I forgot to reset the clock when I passed my last checkpoint; where exactly am I right now?
  • Oh shoot I haven’t heard any calls for me on this frequency lately, did I miss a message from air traffic control to switch to a different controller’s frequency?
  • Oh shoot I’ve been so busy with the checklist that it’s been over a minute since I looked outside the cockpit…is someone about to hit me?  Am I about to collide with a TV tower?

There were two genuine wide-eyed moments on the flight:

  1. Traffic on a collision course.  While flying northeast at 3,500 feet, air traffic control informed me that there was another plane, in front of me, headed towards me, at my altitude.  Yikes.  I hesitated while looking for the plane, until ATC notified me again, a little more urgently, that there was a plane in front of me at my altitude — except that it was a lot closer than it had been a moment before.  I (a) asked ATC for a recommendation, (b) heard them recommend that I climb 500 feet, (c) did so, forthwith.  Moments later I saw the plane, passing below me and just to my left — we would have missed each other, but not by much.
    Lesson learned:  What I should have done was immediately changed altitude and heading as soon as I got the first notification from ATC.  I delayed because I didn’t comprehend the severity of the situation; it’s pretty rare for someone to be coming right at you — this was the first time it’s happened to me.  Given the other pilot’s magnetic heading, that plane was flying at an altitude contrary to federal regulations, which would have been small consolation if we’d collided. (Sub-lesson learned, as my Dad taught me when learning to drive:  Think of the absolutely dumbest, stupidest, most idiotic thing that the other pilot could possibly do, and prepare for him to do exactly that.)
  2. Flight into a cloud.  During the SFM-CON leg I flew (briefly and unintentionally) into a cloud.  Yikes.  The worst part is I didn’t even see the cloud coming; visibility was slowly deteriorating all around me, so I was focusing mostly on the weather below and to my left, trying to determine when I should turn left to get away from the deteriorating weather.  All of a sudden, wham, white-out.  At the time I was flying at 4,500 feet with a ceiling supposedly at 6,500 feet in that area — at least according to my pre-flight weather briefing — so I’d expected to be well clear of the clouds.  (The clouds probably had been at 6,500 feet two hours before when I got the weather briefing.)
    Flying into clouds without special “instrument meteorological conditions” training is (a) prohibited by the FAA and (b) a bad idea; without outside visual references to stay straight-and-level you can pretty quickly lose your spatial orientation and crash.  During flight training you’re taught what to do if you unintentionally find yourself in a cloud: Turn around! is usually your best option:  Check your current heading, make a gentle 180-degree turn, keep watching your instruments to make sure you’re not gaining or losing altitude or banking too steeply, exit the cloud, unclench.  Fortunately, an opening quickly appeared in the cloud below me, so I immediately heaved the yoke forward and flew down out of the cloud, then continued descending to a safe altitude (safe above the ground and safe below the clouds).
    Lesson learned: I should have changed my flight plan to adapt as soon as I noticed the weather start to deteriorate.  First, I should have stopped climbing once I noticed that visibility was getting worse the more I climbed.  Second, given that my planned route was not the most direct route to the destination airport, I should have diverted directly toward the destination (where the weather looked okay) as soon as the weather started getting worse instead of continuing to fly my planned route.

Despite these eye-opening moments, the flight went really well.  My landings were superb — I am pleased to report that, now that I have over 150 landings in my logbook, I can usually land the plane pretty nicely — and once I settled into the swing of things I had time to look out the window, enjoy the view, and think about how much fun I’m having learning to fly.

Unfortunately I haven’t yet had the opportunity to repeat the experience.  I was scheduled to fly the longer cross-country flight the next weekend, but the weather didn’t cooperate.  I was then scheduled to fly the longer cross-country flight the next next weekend, but the weather didn’t cooperate.  So I’m hoping that next weekend (the next next next weekend, so to speak) will have cooperative weather.  Once I finish the second cross-country flight I will then pass the written exam, then take “3 [or more] hours of flight training with an authorized instructor in a single-engine airplane in preparation for the practical test,” then pass the practical test.  Then I’ll be a pilot!  Meanwhile, whenever I fly I am working on improving the coordination of my turns (using rudder and ailerons in the right proportions), making sure to clear to the left or right before starting a turn, and remembering to execute the before landing checklist as soon as I start descending to the traffic pattern altitude.

Overall, flying is easier than I expected it to be.  The most important rule always is fly the airplane.  No matter what is happening — if the propeller shatters, just as lightning strikes the wing causing the electrical panel to catch fire, while simultaneously your passenger begins seizing and stops breathing — maintain control of the airplane!

  • First, the propeller shattering means that you’ve lost your engine; follow the engine failure checklist.  In the Cessna Skyhawk, establish a 68-knot glide speed; this will give you the most time and most distance to land.  Then, look for the best place to land [you should already have a place in mind, before the emergency happens] and turn towards that place.
  • Now, attend to the electrical fire.  First, fly the airplane — maintain 68 knots, maintain a level heading, continue heading toward your best place to land.  Meanwhile, follow the electrical fire in flight checklist by turning off the master switch to turn off power to the panel.  Are you still flying the airplane?  Good, now turn off all the other switches (still flying?), close the vents (fly), activate the fire extinguisher (fly), then get back to flying.  (It may sound like I’m trying to be obtuse here, but that’s really the thought process you’re supposed to follow — if you don’t fly the airplane, it won’t matter in the end what you do to extinguish the fire.)
  • Now, ignore your passenger.  Your job is to get the airplane on the ground so that you can help or call for help.  Unfortunately you don’t have a radio anymore — you lost it when you flipped the master switch — so once you’re within range of your best place to land, execute an emergency descent and get down as quickly as possible.

My new instructor often tells me that I’m flying too tensely, especially on the approach to landing — he remarks that I tighten my shoulders, look forward with intense concentration, make abrupt control movements, and maintain a death grip on the steering wheel.  This tenseness is what I think of as “left-brained flying:”  I am too cerebral, utilitarian, and immediate in my approach to maneuvering and in handling problems in the air; it gets the job done (I fly, I turn, I land, etc.) but doesn’t result in a very artistic (or comfortable) flight.  I am working to be more of a “right-brained pilot,” reacting to the flow of events instead of to single events, making small corrections to the control surfaces and waiting to see their effect on my flight path; and in general relaxing and enjoying the flight instead of obsessing over the flight parameters.