Shepherdでノード単位のアクセス制御を実現するため,フォールドという概念を導入する. フォールドはVPNを介した相互通信が許可されたノードの集合で, フォールドの複数定義でき,単一ノードによる複数のフォールド参加も可能である. 図 3の例では fold 1 と fold 2 のように2つのフォールドが作成され, は と, は とVPNを介した通信が可能である.
3.2節で述べたように, ShepherdはEthernetフレーム集約手法として Proxy ARP を用いることにより, 導入時の3つの機能要件を同時に達成する.
Shepherdは接続先の発見手法としてインスタントメッセンジャのオープンプロトコルである XMPP (eXtensible Messaging and Presence Protocol) [10] を用いる. インスタントメッセンジャのサービスを提供するXMPPサーバにシェパードノードのアカウントを作成し, そのアカウントを用いて両者がXMPPサーバにログインすることで, XMPPサーバから互いのIPアドレスなどの情報の通知をうける.
Shepherdは異なるPNのノードの送信先IPアドレスの決定手法として, 既存アドレス空間を拡張することにより解決する. ShepherdはPNのアドレス空間から未使用IPアドレスを発見し,送信先IPアドレスとする. その送信先IPアドレスを宛先としたIPパケットはShepherdによってフレンドシェパードによって転送され, 受信したシェパードノードはそのIPパケットの送信先IPアドレスを送信先ノードの実際のIPアドレスに書き換え, ノードに送信する.