I'm stuck on Exercise 3.70 from Kristopher Tapp's Differential Topology of Curves and Surfaces:
Let $S$ be a connected oriented regular surface. Suppose there exists a line $L \subset \mathbb R^3$ that intersects all normal lines to $S$ (that is, for every $p \in S$, the trace of the normal line $t \mapsto p + t N(p)$ intersects $L$). Prove that $S$ is a portion of a surface of revolution.
I was able to show that every point $p \in S$ has a neighbourhood in $S$ whose intersection with the plane perpendicular to $L$ through $p$ is a circle with centre on $L$ (with the help of part (i) in this question: How to solve this questions about regular surfaces?):
Note that we further require $L$ not to intersect $S$. First, suppose $L$ is the $z$-axis and let $p = (p_1, p_2, p_3) \in S$. Then $p + s N(p) = (0, 0, z)$ for some $s \in \mathbb R - \{0\}$ and some $z \in \mathbb R$, so $N(p) = (-p_1 / s, -p_2 / s, (z - p_3) / s)$. Note that $\langle(-p_1 / s, -p_2 / s, 0), N(p)\rangle = (p_1^2 + p_2^2) / s^2 \neq 0$, so $(-p_1 / s, -p_2 / s, 0) \notin T_pS$. Thus, either $e_1 \notin T_pS$ or $e_2 \notin T_pS$, and so by Exercise 3.48, there is a neighbourhood $V$ of $p$ in $S$ that is the graph of a smooth function of one of the following forms: $x = f(y, z)$, or $y = f(x, z)$, respectively. Define the curve $\gamma: I \to V$ by $\gamma(t) = (f(t, p_3), t, p_3)$ or $\gamma(t) = (t, f(t, p_3), p_3)$, respectively. Then $\gamma'(t) = (df_{(t, p_3)}(1, 0), 1, 0) \neq 0$ or $\gamma'(t) = (1, df_{(t, p_3)}(1, 0), 0) \neq 0$, and $\gamma(I) \subset p + \operatorname{span}\{e_1, e_2\}$. Conversely, if $(x, y, p_3) \in V$, then $x = f(y, p_3)$ or $y = f(x, p_3)$, and so $V \cap (p + \operatorname{span}\{e_1, e_2\}) \subset \gamma(I)$. We claim $\gamma$ is a portion of the circle centred at $(0, 0, p_3)$ through $p$. For each $t \in I$, let $\mathfrak n(t)$ denote the projection of $N(\gamma(t))$ onto $\operatorname{span}\{e_1, e_2\}$. Then $$\langle\mathfrak n(t), \gamma'(t)\rangle = \langle N(\gamma(t)), \gamma'(t)\rangle - \langle N(\gamma(t)), e_3\rangle \langle e_3, \gamma'(t)\rangle = 0$$ and $\gamma(t) - (0, 0, p_3) = -\frac{\lvert\gamma(t) - (0, 0, p_3)\rvert}{\lvert\mathfrak n(t)\rvert} \mathfrak n(t)$ for all $t \in I$. Thus, $$\frac{d}{dt}\langle\gamma(t) - (0, 0, p_3), \gamma(t) - (0, 0, p_3)\rangle = -\frac{2 \lvert\gamma(t) - (0, 0, p_3)\rvert}{\lvert\mathfrak n(t)\rvert} \langle\gamma'(t), \mathfrak n(t)\rangle = 0,$$ and so $\lvert\gamma(t) - (0, 0, p_3)\rvert$ is constant.
What I'm having trouble showing is that there's a single curve whose surface of revolution about the line $L$ contains $S$, i.e. that if two points of the surface are in the same plane perpendicular to $L$, then they're at the same distance from $L$ (the question Surfaces of revolution - Problem does not address this); I'm pretty sure I need to use the fact that $S$ is connected, and hence path connected (I'm pretty sure I can show it is in fact smoothly path connected, if needed), but I can't seem to use a path between two points to obtain the single curve I need.
Given two points $p = (p_1, p_2, p_3), q = (q_1, q_2, q_3) \in S$ with $p_3 = q_3$ (still assuming $L$ is the $z$-axis), I believe I want to show that $p_1^2 + p_2^2 = q_1^2 + q_2^2$, or perhaps find a way to write $p_1^2 + p_2^2$ as a function of $p_3$. I've tried using the fact that there are functions $s: S \to \mathbb R - \{0\}, z: S \to \mathbb R$ such that $p + s(p) N(p) = (0, 0, z(p))$ and manipulating this equation to do the latter, and I've tried introducing a path (or curve, if needed) $\beta: [0, 1] \to S$ from $p$ to $q$ and using the fact that $\beta'(t) \in T_{\beta(t)}S$ to do the former, but haven't found anything that I can tell is useful.
Another thing I've thought to try after the discussion in the comments is to show that if there are points $p = (p_1, p_2, p_3), q = (q_1, q_2, q_3) \in S$ with $p_3 = q_3$ at different distances from the $z$-axis, then there is a point $\beta(t)$ on the curve from $p$ to $q$ (which would need to be regular, which I think I could guarantee by taking a piecewise-regular path and rounding off the corners in a neighbourhood thereof) with $\beta'(t)$ horizontal such that $T_{\beta(t)}S$ is horizontal, but I don't really see how to show this. By the first part of the proof, I know that one basis vector in $T_{\beta(t)}S$ is the tangent vector to the horizontal circle through $\beta(t)$, and presumably I need to somehow use the fact that $p, q$ are at different distances from the $z$-axis to show that $\beta'(t)$ is linearly independent of that vector, but I don't see how.