ใช่คุณต้องระบุ IP ปลายทางและพอร์ตเมื่อใช้การส่งต่อโลคัล จากman ssh
:
-L [bind_address:]port:host:hostport
Specifies that the given port on the local (client) host is to be
forwarded to the given host and port on the remote side.
ชัดเจนเพียงผูกที่อยู่เป็นตัวเลือก
ไม่คุณไม่สามารถระบุโฮสต์ปลายทางหรือพอร์ตเมื่อใช้การส่งต่อแบบไดนามิก ในการส่งต่อแบบไดนามิก SSH ทำหน้าที่เป็นพร็อกซี SOCKS อีกครั้งจาก manpage (เน้นเหมือง):
-D [bind_address:]port
Specifies a local “dynamic” application-level port forwarding.
This works by allocating a socket to listen to port on the local
side, optionally bound to the specified bind_address. Whenever a
connection is made to this port, the connection is forwarded over
the secure channel, and the application protocol is then used to
determine where to connect to from the remote machine. Currently
the SOCKS4 and SOCKS5 protocols are supported, and ssh will act
as a SOCKS server.
ด้วย-L
SSH ไม่พยายามทำความเข้าใจกับการรับส่งข้อมูล มันจะส่งทุกอย่างที่ได้รับบนพอร์ตในเครื่องไปยังพอร์ตเป้าหมาย - คุณกำหนดพอร์ตเป้าหมายในเวลาที่ทำการเชื่อมต่อ ด้วย-D
SSH ทำหน้าที่เป็นพร็อกซีเซิร์ฟเวอร์และสามารถจัดการการเชื่อมต่อจากหลายพอร์ต (ตัวอย่างเช่นเบราว์เซอร์ที่กำหนดค่าให้ใช้เป็นพร็อกซี SOCKS จากนั้นสามารถเข้าถึง HTTP, HTTPS, FTP และอื่น ๆ ผ่านการเชื่อมต่อเดียวกัน) และเช่นเดียวกับพร็อกซีเซิร์ฟเวอร์อื่น ๆ ก็จะใช้ทราฟฟิกเพื่อกำหนดปลายทาง