Almost all of the nurse practitioner programs in the country are MSN programs -- the exceptions are a few certificate programs that still exist in CA, but graduates of those programs can only
practice in CA and are not recognized as NPs by any other state. Many of the MSN programs are currently looking at transitioning into doctoral (DNP) programs, which is a big, current controversy in nursing (and there are numerous threads on this board about it that you can review if you're interested).
So, becoming a nurse practitioner will involve getting (at least) an MSN with a concentration in whichever "flavor" of NP interests you. As for teaching, you are correct that the MSN is the entry level for teaching in RN programs in most states (many colleges prefer or require doctorates). Although there are MSN programs out there in nursing education, you will find, if you look around, that the vast majority of nursing faculty are prepared in an advanced practice role at the MSN level (NP, nurse midwife, nurse anesthetist, or clinical nurse specialist). Only a small minority of nursing faculty actually have a degree in nursing education
of nursing want to have faculty with strong clinical backgrounds, as well as a well-rounded faculty overall -- position postings often specify that the school is looking for a CNM, or FNP, or psych CNS/NP, or some other specific clinical specialty. So, you can teach nursing with any
MSN (although your employment options will be limited compared to someone with a doctorate).
There are others here on the board who can address the NP-working-as-staff-nurse question better than I -- not an area with which I have any experience. I believe there are some older threads here that discuss that question -- you might want to do a search or skim through the NP forum.