AsyncSSH ផ្តល់ការបញ្ជូន TCP បែបថាមវន្តតាមរយៈ forward_socks()។ កម្មវិធីដែលមាន AsyncSSH រួចហើយអាចបង្កើតឧបករណ៍ស្តាប់ SOCKS មូលដ្ឋានលើការតភ្ជាប់ SSH៖

import asyncio
import asyncssh

async def main():
    async with asyncssh.connect(
        'jump.example.net', username='operator'
    ) as connection:
        listener = await connection.forward_socks('127.0.0.1', 1080)
        await listener.wait_closed()

asyncio.run(main())

ម៉ាស៊ីនមេ SSH និងគណនីគ្រាន់តែជាឧទាហរណ៍។ ការផ្ទៀងផ្ទាត់កូនសោម៉ាស៊ីនធម្មតារបស់ AsyncSSH នៅតែអនុវត្ត។ ម៉ាស៊ីនមេត្រូវអនុញ្ញាតការបញ្ជូន TCP ដែលបានស្នើ។ សម្រាប់សមមូលលើបន្ទាត់ពាក្យបញ្ជា ការបញ្ជូនថាមវន្តមូលដ្ឋានរបស់ OpenSSH ប្រើទិសដៅដូចគ្នាពី SSH ទៅគោលដៅ។

អតិថិជនមូលដ្ឋានអាចប្រើ 127.0.0.1:1080 ជាចំណុចបញ្ចប់ SOCKS របស់ពួកគេឥឡូវនេះ។ រាល់សំណើ SOCKS ផ្តល់គោលដៅរបស់ខ្លួន; ម៉ាស៊ីនមេ SSH បើកការតភ្ជាប់ TCP ចេញដែលត្រូវគ្នា។ កម្មវិធីមិនចាំបាច់ដំណើរការកម្មវិធីទាញយកពីចម្ងាយសម្រាប់ URL នីមួយៗទេ។

ការរង់ចាំរក្សាអនុគមន៍អសមកាលនៅក្នុងវិសាលភាពនៃការតភ្ជាប់។ ការត្រឡប់ភ្លាមៗបន្ទាប់ពីបង្កើតឧបករណ៍ស្តាប់នឹងចាកចេញពីវិសាលភាពនោះ ហើយបិទការតភ្ជាប់ដែលទ្រទ្រង់វា។ កម្មវិធី asyncio ធំជាងអាចរក្សាការតភ្ជាប់នេះបើកចំហ ខណៈដំណើរការកិច្ចការផ្សេងទៀតរបស់ខ្លួនលើ event loop ដូចគ្នា។

អត្ថបទពាក់ព័ន្ធ