Since you did not really specify what you mean by the "outermost graph nodes", and the approaches by @Syed and @cvgmt only work for convex graphs, here is an approach that works also for non-convex graphs, and where the "outermost graph nodes" are defined as the nodes of the "outer face". The key function used is PlanarFaceList
.
pts = AssociationThread[VertexList[g] -> GraphEmbedding[g]];
outer = Select[PlanarFaceList[g],
And @@ (RegionMember[Polygon[Values@KeyTake[pts, #]]] /@ Values@pts) &]
(* {{1, 4, 13, 14, 12, 7, 2}} *)
An example of a non-convex graphs:
g = Graph[{{1, 2}, {2, 3}, {3, 1}, {3, 4}, {4, 5}, {5, 6}, {6, 4}}]
HighlightGraph[g, outer]