ພາສາອັງກິດພາສາຝຣັ່ງແອສປາໂຍນ

Ad


OnWorks favicon

filan - ອອນລາຍໃນຄລາວ

ເປີດໃຊ້ flan ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີຜ່ານ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ນີ້ແມ່ນຄໍາສັ່ງ filan ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ໂຄງການ:

NAME


socat - ການຖ່າຍທອດອະເນກປະສົງ (SOcket CAT)

ສະຫຼຸບສັງລວມ


socat [ທາງ​ເລືອກ​]
socat -V
socat -h[h[h]] | -?[?[?]]
blah blah
ໂປຣແຄນ

ລາຍລະອຽດ


Socat ເປັນ​ປະ​ໂຫຍດ​ທີ່​ອີງ​ໃສ່​ບັນ​ຊີ​ຄໍາ​ສັ່ງ​ທີ່​ສ້າງ​ຕັ້ງ​ສອງ bidirectional byte streams ແລະ​
ໂອນຂໍ້ມູນລະຫວ່າງເຂົາເຈົ້າ. ເນື່ອງຈາກວ່າສາຍນ້ໍາສາມາດໄດ້ຮັບການກໍ່ສ້າງຈາກຊຸດຂະຫນາດໃຫຍ່ຂອງ
ປະເພດທີ່ແຕກຕ່າງກັນຂອງຂໍ້ມູນຈົມລົງແລະແຫຼ່ງ (ເບິ່ງປະເພດທີ່ຢູ່), ແລະເນື່ອງຈາກວ່າຈໍານວນຫຼາຍທີ່ຢູ່
ທາງເລືອກອາດຈະຖືກນໍາໃຊ້ກັບສາຍນ້ໍາ, socat ສາມາດຖືກນໍາໃຊ້ເພື່ອຈຸດປະສົງທີ່ແຕກຕ່າງກັນຫຼາຍ.

Blah ເປັນຜົນປະໂຫຍດທີ່ພິມຂໍ້ມູນກ່ຽວກັບຕົວອະທິບາຍໄຟລ໌ທີ່ເຮັດວຽກຂອງຕົນເພື່ອ stdout. ມັນ
ໄດ້ຖືກຂຽນໄວ້ສໍາລັບການດີບັກ socat, ແຕ່ອາດຈະເປັນປະໂຫຍດສໍາລັບຈຸດປະສົງອື່ນໆເຊັ່ນດຽວກັນ. ໃຊ້
-h ທາງເລືອກເພື່ອຊອກຫາຂໍ້ມູນເພີ່ມເຕີມ.

ໂປຣແຄນ ແມ່ນຜົນປະໂຫຍດທີ່ພິມຂໍ້ມູນກ່ຽວກັບຕົວກໍານົດການຂະບວນການເພື່ອ stdout. ມັນ​ມີ
ໄດ້ຖືກຂຽນເພື່ອເຂົ້າໃຈບາງຄຸນສົມບັດຂອງຂະບວນການ UNIX ແລະສໍາລັບການດີບັກ socat,
ແຕ່ອາດຈະເປັນປະໂຫຍດສໍາລັບຈຸດປະສົງອື່ນໆເຊັ່ນດຽວກັນ.

ວົງຈອນຊີວິດຂອງກ socat ຕົວຢ່າງປົກກະຕິແລ້ວປະກອບດ້ວຍສີ່ໄລຍະ.

ໃນ ໃນ​ມັນ ໄລຍະ, ທາງເລືອກແຖວຄໍາສັ່ງຖືກແຍກວິເຄາະແລະການບັນທຶກແມ່ນເລີ່ມຕົ້ນ.

ໃນລະຫວ່າງການ ເປີດ ໄລຍະ, socat ເປີດທີ່ຢູ່ທໍາອິດແລະຫຼັງຈາກນັ້ນທີ່ຢູ່ທີສອງ.
ຂັ້ນຕອນເຫຼົ່ານີ້ແມ່ນປົກກະຕິແລ້ວຂັດຂວາງ; ດັ່ງນັ້ນ, ໂດຍສະເພາະສໍາລັບປະເພດທີ່ຢູ່ທີ່ຊັບຊ້ອນເຊັ່ນ: ຖົງຕີນ,
ການຮ້ອງຂໍການເຊື່ອມຕໍ່ຫຼືກ່ອງໂຕ້ຕອບການຮັບຮອງຈະຕ້ອງສໍາເລັດກ່ອນທີ່ຈະຂັ້ນຕອນຕໍ່ໄປແມ່ນ
ເລີ່ມຕົ້ນ.

ໃນ ການໂອນ ໄລຍະ, socat ເບິ່ງທັງການອ່ານ ແລະຂຽນຕົວບັນຍາຍໄຟລ໌ສະຕຣີມຜ່ານ
ເລືອກ() , ແລະ, ເມື່ອຂໍ້ມູນມີຢູ່ຂ້າງໜຶ່ງ ແລະ ສາມາດຂຽນໃສ່ອີກດ້ານຫນຶ່ງ,
socat ອ່ານມັນ, ປະຕິບັດການປ່ຽນຕົວອັກສອນແຖວໃຫມ່ຖ້າຕ້ອງການ, ແລະຂຽນຂໍ້ມູນໃສ່
ຂຽນໄຟລ໌ descriptor ຂອງສາຍນ້ໍາອື່ນໆ, ຫຼັງຈາກນັ້ນສືບຕໍ່ລໍຖ້າສໍາລັບຂໍ້ມູນເພີ່ມເຕີມໃນ
ທັງສອງທິດທາງ.

ໃນເວລາທີ່ຫນຶ່ງຂອງນ້ໍາປະສິດທິຜົນໄປຮອດ EOF, ໄດ້ ປິດ ໄລຍະເລີ່ມຕົ້ນ. Socat ການໂອນເງິນ
ເງື່ອນໄຂ EOF ກັບສາຍນ້ໍາອື່ນໆ, ເຊັ່ນ: ພະຍາຍາມປິດພຽງແຕ່ກະແສການຂຽນຂອງມັນ,
ໃຫ້ໂອກາດທີ່ຈະຢຸດເຊົາຢ່າງສະຫງ່າງາມ. ສໍາລັບເວລາທີ່ກໍານົດໄວ້ socat ສືບຕໍ່ໂອນ
ຂໍ້ມູນໃນທິດທາງອື່ນ, ແຕ່ຫຼັງຈາກນັ້ນປິດຊ່ອງທີ່ຍັງເຫຼືອທັງຫມົດແລະຢຸດເຊົາ.

OPTIONS


Socat ສະຫນອງບາງທາງເລືອກເສັ້ນຄໍາສັ່ງທີ່ດັດແປງພຶດຕິກໍາຂອງໂຄງການ. ເຂົາເຈົ້າ
ບໍ່ມີຫຍັງກ່ຽວຂ້ອງກັບທາງເລືອກທີ່ຢູ່ທີ່ເອີ້ນວ່າ ທີ່ຢູ່ ຖືກນໍາໃຊ້ເປັນສ່ວນຂອງທີ່ຢູ່
ຂໍ້ສະເພາະ.

-V ສະບັບພິມແລະຂໍ້ມູນຄຸນນະສົມບັດທີ່ມີຢູ່ເພື່ອ stdout, ແລະອອກ.

-h | -?
ພິມຂໍ້ຄວາມຊ່ວຍເຫຼືອເພື່ອ stdout ອະທິບາຍທາງເລືອກແຖວຄໍາສັ່ງແລະທີ່ຢູ່ທີ່ມີຢູ່
ປະເພດ, ແລະອອກ.

-ຊົວ | -??
ເຊັ່ນດຽວກັນກັບ -h, ບວກກັບບັນຊີລາຍຊື່ຂອງຊື່ສັ້ນຂອງທາງເລືອກທີ່ຢູ່ທັງຫມົດ. ບາງ
ທາງເລືອກແມ່ນຂຶ້ນກັບເວທີ, ດັ່ງນັ້ນຜົນຜະລິດນີ້ແມ່ນເປັນປະໂຫຍດສໍາລັບການກວດສອບ
ການປະຕິບັດໂດຍສະເພາະ.

- hhh | - ???
ເຊັ່ນດຽວກັບ -hh, ບວກກັບບັນຊີລາຍຊື່ຂອງຊື່ທາງເລືອກທີ່ຢູ່ທີ່ມີຢູ່ທັງຫມົດ.

-d ຖ້າບໍ່ມີທາງເລືອກນີ້, ມີພຽງແຕ່ຂໍ້ຄວາມທີ່ເປັນອັນຕະລາຍແລະຄວາມຜິດພາດເທົ່ານັ້ນທີ່ຖືກສ້າງຂຶ້ນ; ການ​ນໍາ​ໃຊ້​ນີ້​
ທາງເລືອກຍັງພິມຂໍ້ຄວາມເຕືອນ. ເບິ່ງ DIAGNOSTICS ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມ.

-d -d ພິມຂໍ້ຄວາມທີ່ເປັນອັນຕະລາຍ, ຄວາມຜິດພາດ, ການເຕືອນໄພ, ແລະຂໍ້ຄວາມແຈ້ງການ.

-d -d -d
ພິມ​ຄວາມ​ຕາຍ​, ຄວາມ​ຜິດ​ພາດ​, ຄໍາ​ເຕືອນ​, ແຈ້ງ​ການ​, ແລະ​ຂໍ້​ຄວາມ​ຂໍ້​ມູນ​.

-d -d -d -d
ພິມ​ຄວາມ​ຕາຍ​, ຄວາມ​ຜິດ​ພາດ​, ຄໍາ​ເຕືອນ​, ແຈ້ງ​ການ​, ຂໍ້​ມູນ​, ແລະ​ຂໍ້​ຄວາມ​ດີ​ບັກ​.

-D ບັນທຶກຂໍ້ມູນກ່ຽວກັບຕົວອະທິບາຍໄຟລ໌ກ່ອນທີ່ຈະເລີ່ມຕົ້ນໄລຍະການໂອນ.

-ly[ ]
ຂຽນຂໍ້ຄວາມໃສ່ syslog ແທນ stderr; ຄວາມ​ຮຸນ​ແຮງ​ທີ່​ໄດ້​ກໍາ​ນົດ​ດ້ວຍ​ທາງ​ເລືອກ -d​.
ມີທາງເລືອກ , ປະເພດ syslog ສາມາດເລືອກໄດ້, ຄ່າເລີ່ມຕົ້ນແມ່ນ "daemon".
ຫ້ອງສະໝຸດພາກສ່ວນທີສາມອາດຈະບໍ່ເຊື່ອຟັງທາງເລືອກນີ້.

-lf
ຂຽນຂໍ້ຄວາມໃສ່ [filename] ແທນ stderr. ບາງພາກສ່ວນທີສາມ
ຫ້ອງສະຫມຸດ, ໂດຍສະເພາະ libwrap, ອາດຈະບໍ່ເຊື່ອຟັງທາງເລືອກນີ້.

-ls ຂຽນຂໍ້ຄວາມໃສ່ stderr (ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ). ບາງຫ້ອງສະຫມຸດພາກສ່ວນທີສາມອາດຈະ
ບໍ່ເຊື່ອຟັງທາງເລືອກນີ້, ໂດຍສະເພາະ libwrap ປະກົດວ່າພຽງແຕ່ເຂົ້າສູ່ລະບົບ syslog.

-lp
ລົບລ້າງຊື່ໂປຣແກຣມທີ່ພິມໃນຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດ ແລະໃຊ້ໃນການກໍ່ສ້າງ
ຊື່ຕົວແປສະພາບແວດລ້ອມ.

-lu ຂະຫຍາຍເວລາຂອງຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດໄປສູ່ຄວາມລະອຽດໄມໂຄຣວິນາທີ. ບໍ່ເຮັດວຽກ
ເມື່ອເຂົ້າສູ່ລະບົບ syslog.

-lm[ ]
ໂໝດບັນທຶກແບບປະສົມ. ໃນລະຫວ່າງການເລີ່ມຕົ້ນຂໍ້ຄວາມຖືກພິມອອກໄປຫາ stderr; ເມື່ອ​ໃດ​ socat ເລີ້ມຕົ້ນ
ໄລຍະການໂອນຍ້າຍຫຼືໂຫມດ daemon (ie ຫຼັງຈາກເປີດສາຍນ້ໍາທັງຫມົດແລະກ່ອນ
ເລີ່ມ​ການ​ໂອນ​ຂໍ້​ມູນ​, ຫຼື​, ມີ​ເຕົ້າ​ຮັບ​ຟັງ​ທີ່​ມີ​ທາງ​ເລືອກ​ຂອງ​ສ້ອມ​, ກ່ອນ​ທີ່​ຈະ​ໄດ້​
ທໍາອິດຍອມຮັບການໂທ), ມັນສະຫຼັບການບັນທຶກໄປຫາ syslog. ມີທາງເລືອກ , ໄດ້
ປະເພດ syslog ສາມາດເລືອກໄດ້, ຄ່າເລີ່ມຕົ້ນແມ່ນ "daemon".

-ລ ເພີ່ມຊື່ເຈົ້າພາບເພື່ອບັນທຶກຂໍ້ຄວາມ. ໃຊ້ຄ່າຈາກຕົວແປສະພາບແວດລ້ອມ HOSTNAME ຫຼື
ຄ່າທີ່ດຶງມາດ້ວຍ uname() ຖ້າ HOSTNAME ບໍ່ໄດ້ຕັ້ງ.

-v ຂຽນຂໍ້ມູນທີ່ຖືກໂອນບໍ່ພຽງແຕ່ໄປຫາສາຍນ້ໍາເປົ້າຫມາຍຂອງພວກເຂົາ, ແຕ່ຍັງໃສ່ stderr.
ຮູບ​ແບບ​ຜົນ​ຜະ​ລິດ​ແມ່ນ​ຂໍ້​ຄວາມ​ທີ່​ມີ​ບາງ​ການ​ປ່ຽນ​ແປງ​ສໍາ​ລັບ​ການ​ອ່ານ​ໄດ້​, ແລະ​ນໍາ​ຫນ້າ​ດ້ວຍ​
"> " ຫຼື "< " ຊີ້ບອກທິດທາງການໄຫຼ.

-x ຂຽນຂໍ້ມູນທີ່ຖືກໂອນບໍ່ພຽງແຕ່ໄປຫາສາຍນ້ໍາເປົ້າຫມາຍຂອງພວກເຂົາ, ແຕ່ຍັງໃສ່ stderr.
ຮູບ​ແບບ​ຜົນ​ຜະ​ລິດ​ແມ່ນ​ເລກ​ຖານ​ສິບ​ຫົກ​, ຄໍາ​ນໍາ​ຫນ້າ​ດ້ວຍ "> " ຫຼື "< " ຊີ້​ບອກ​ການ​ໄຫຼ​
ທິດທາງ. ສາມາດຖືກລວມເຂົ້າກັບ -v.

- ຂ
ຕັ້ງຄ່າບລັອກການໂອນຂໍ້ມູນ [size_t]. ຫຼາຍທີ່ສຸດ bytes ຖືກໂອນ
ຕໍ່ບາດກ້າວ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 8192 bytes.

-s ໂດຍຕົວຢ່າງ, socat ສິ້ນສຸດເມື່ອມີຂໍ້ຜິດພາດເກີດຂຶ້ນເພື່ອປ້ອງກັນຂະບວນການ
ແລ່ນເມື່ອທາງເລືອກບາງອັນບໍ່ສາມາດນຳໃຊ້ໄດ້. ດ້ວຍທາງເລືອກນີ້, socat ແມ່ນ sloppy
ມີຂໍ້ຜິດພາດແລະພະຍາຍາມສືບຕໍ່. ເຖິງແມ່ນວ່າມີທາງເລືອກນີ້, socat ຈະອອກໄປ
ເສຍຊີວິດ, ແລະຈະຍົກເລີກຄວາມພະຍາຍາມເຊື່ອມຕໍ່ເມື່ອການກວດສອບຄວາມປອດໄພລົ້ມເຫລວ.

-t
ເມື່ອຊ່ອງທາງຫນຶ່ງໄດ້ບັນລຸ EOF, ສ່ວນການຂຽນຂອງຊ່ອງທາງອື່ນຈະຖືກປິດລົງ.
ຫຼັງຈາກນັ້ນ, socat ລໍຖ້າ [timeval] ວິນາທີກ່ອນທີ່ຈະສິ້ນສຸດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.5
ວິນາທີ. ການໝົດເວລານີ້ນຳໃຊ້ກັບທີ່ຢູ່ບ່ອນທີ່ສາມາດຂຽນ ແລະອ່ານໄດ້ເທົ່ານັ້ນ
ປິດຢ່າງເປັນເອກະລາດ. ເມື່ອໃນຊ່ວງເວລາໝົດເວລາສ່ວນທີ່ອ່ານໃຫ້ EOF,
socat ຢຸດເຊົາໂດຍບໍ່ມີການລໍຖ້າເວລາຫມົດເວລາ.

-ທ
ໝົດເວລາການບໍ່ມີການເຄື່ອນໄຫວທັງໝົດ: ເມື່ອ socat ຢູ່ໃນວົງການໂອນຍ້າຍແລ້ວ ແລະບໍ່ມີຫຍັງເລີຍ
ໄດ້​ເກີດ​ຂຶ້ນ​ສໍາ​ລັບ​ການ​ [timeval] ວິນາທີ (ບໍ່ມີຂໍ້ມູນມາຮອດ, ບໍ່ມີການລົບກວນ
ເກີດຂຶ້ນ ... ) ຫຼັງຈາກນັ້ນມັນສິ້ນສຸດລົງ. ມີປະໂຫຍດກັບໂປໂຕຄອນເຊັ່ນ UDP ທີ່ບໍ່ສາມາດເຮັດໄດ້
ໂອນ EOF.

-u ໃຊ້ໂໝດ unidirectional. ທີ່ຢູ່ທໍາອິດແມ່ນໃຊ້ພຽງແຕ່ສໍາລັບການອ່ານ, ແລະ
ທີ່ຢູ່ທີສອງຖືກນໍາໃຊ້ພຽງແຕ່ສໍາລັບການຂຽນ (ຕົວຢ່າງ).

-U ໃຊ້ໂໝດ unidirectional ໃນທິດທາງປີ້ນກັບກັນ. ທີ່ຢູ່ທໍາອິດແມ່ນໃຊ້ສໍາລັບ
ການຂຽນ, ແລະທີ່ຢູ່ທີສອງແມ່ນໃຊ້ສໍາລັບການອ່ານເທົ່ານັ້ນ.

-g ໃນລະຫວ່າງການວິເຄາະທາງເລືອກທີ່ຢູ່, ຢ່າກວດເບິ່ງວ່າຕົວເລືອກນັ້ນຖືກພິຈາລະນາເປັນປະໂຫຍດໃນ
ສະພາບແວດລ້ອມທີ່ຢູ່ໃຫ້. ໃຊ້ມັນຖ້າທ່ານຕ້ອງການບັງຄັບ, ຕົວຢ່າງ, ເຄື່ອງໃຊ້ຂອງ a
ທາງ​ເລືອກ socket ກັບ​ອຸ​ປະ​ກອນ serial​.

-ລ
ຖ້າມີ lockfile, ອອກມາດ້ວຍຄວາມຜິດພາດ. ຖ້າບໍ່ມີ lockfile, ສ້າງມັນແລະ
ສືບຕໍ່, unlinks lockfile ກ່ຽວກັບການອອກ.

-ວ
ຖ້າມີ lockfile, ລໍຖ້າຈົນກ່ວາມັນຫາຍໄປ. ເມື່ອ lockfile ບໍ່ມີ,
ສ້າງມັນແລະສືບຕໍ່, unlinks lockfile ສຸດອອກ.

-4 ໃຊ້ IP ເວີຊັ່ນ 4 ໃນກໍລະນີທີ່ທີ່ຢູ່ບໍ່ໄດ້ລະບຸຢ່າງຊັດເຈນ ຫຼື ຊັດເຈນ
ສະບັບ; ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນ.

-6 ໃຊ້ IP ເວີຊັ່ນ 6 ໃນກໍລະນີທີ່ທີ່ຢູ່ບໍ່ໄດ້ລະບຸຢ່າງຊັດເຈນ ຫຼື ຊັດເຈນ
ສະບັບ.

ADDRESS ນະລັກສະນະ


ດ້ວຍການໂຕ້ຖຽງແຖວຄໍາສັ່ງທີ່ຢູ່, ຜູ້ໃຊ້ໃຫ້ socat ຄໍາ​ແນະ​ນໍາ​ແລະ​
ຂໍ້ມູນທີ່ຈໍາເປັນສໍາລັບການສ້າງຕັ້ງ byte streams.

ສະເພາະທີ່ຢູ່ໂດຍປົກກະຕິປະກອບດ້ວຍຄໍາທີ່ໃຊ້ປະເພດທີ່ຢູ່, ສູນ ຫຼືຫຼາຍກວ່ານັ້ນ
ຕົວກໍານົດການທີ່ຢູ່ທີ່ຕ້ອງການແຍກໂດຍ ':' ຈາກຄໍາຫລັກແລະຈາກກັນແລະກັນ, ແລະ
ທາງເລືອກທີ່ຢູ່ສູນ ຫຼືຫຼາຍກວ່ານັ້ນແຍກອອກດ້ວຍ ','.

ຄໍາສໍາຄັນກໍານົດປະເພດທີ່ຢູ່ (ເຊັ່ນ: TCP4, OPEN, EXEC). ສໍາລັບບາງຄໍາທີ່ມີ
ມີຄໍາສັບຄ້າຍຄື ('-' ສໍາລັບ STDIO, TCP ສໍາລັບ TCP4). ຄໍາສໍາຄັນແມ່ນບໍ່ມີຕົວພິມນ້ອຍໃຫຍ່. ສໍາລັບຈໍານວນຫນ້ອຍ
ປະເພດທີ່ຢູ່ພິເສດ, ຄໍາສໍາຄັນອາດຈະຖືກຍົກເວັ້ນ: ທີ່ຢູ່ສະເພາະເລີ່ມຕົ້ນດ້ວຍ a
ຕົວເລກສົມມຸດວ່າເປັນ FD (ຕົວອະທິບາຍໄຟລ໌ດິບ) ທີ່ຢູ່; ຖ້າພົບ '/' ກ່ອນ
ທໍາອິດ ':' ຫຼື ',', GOPEN (ໄຟລ໌ທົ່ວໄປເປີດ) ແມ່ນສົມມຸດ.

ຈໍານວນທີ່ກໍານົດໄວ້ແລະປະເພດຂອງຕົວກໍານົດການທີ່ຢູ່ແມ່ນຂຶ້ນກັບປະເພດທີ່ຢູ່. ຕົວຢ່າງ: TCP4
ຮຽກ​ຮ້ອງ​ໃຫ້​ມີ​ສະ​ເພາະ​ຂອງ​ເຄື່ອງ​ແມ່​ຂ່າຍ (ຊື່​ຫຼື​ທີ່​ຢູ່​)​, ແລະ​ສະ​ເພາະ​ພອດ (ຫມາຍ​ເລກ​ຫຼື​
ຊື່​ການ​ບໍ​ລິ​ການ​)​.

ທາງເລືອກທີ່ຢູ່ສູນ ຫຼືຫຼາຍກວ່ານັ້ນອາດຈະຖືກມອບໃຫ້ກັບແຕ່ລະທີ່ຢູ່. ພວກເຂົາເຈົ້າມີອິດທິພົນຕໍ່ທີ່ຢູ່
ບາງວິທີ. ທາງເລືອກປະກອບດ້ວຍຄໍາທາງເລືອກຫຼືຄໍາທາງເລືອກແລະມູນຄ່າ,
ແຍກໂດຍ '='. ຄໍາສໍາຄັນທາງເລືອກແມ່ນຕົວພິມນ້ອຍທີ່ບໍ່ມີຕົວຕົນ. ສໍາລັບການກັ່ນຕອງທາງເລືອກທີ່
ມີປະໂຫຍດກັບປະເພດທີ່ຢູ່, ແຕ່ລະທາງເລືອກແມ່ນສະມາຊິກຂອງກຸ່ມທາງເລືອກຫນຶ່ງ. ສໍາລັບແຕ່ລະຄົນ
ປະເພດທີ່ຢູ່ມີຊຸດຂອງກຸ່ມທາງເລືອກທີ່ອະນຸຍາດໃຫ້. ພຽງແຕ່ທາງເລືອກທີ່ເປັນຂອງຫນຶ່ງຂອງ
ກຸ່ມທີ່ຢູ່ເຫຼົ່ານີ້ອາດຈະຖືກນໍາໃຊ້ (ຍົກເວັ້ນທາງເລືອກ -g).

ຂໍ້ມູນສະເພາະທີ່ຢູ່ດັ່ງຕໍ່ໄປນີ້ schema ຂ້າງເທິງແມ່ນຍັງເອີ້ນວ່າ ດຽວ ທີ່ຢູ່
ຂໍ້ມູນສະເພາະ. ສອງທີ່ຢູ່ດຽວສາມາດຖືກລວມເຂົ້າກັບ "!!" ເພື່ອປະກອບເປັນ ສອງ ປະເພດ
ທີ່ຢູ່ສໍາລັບຊ່ອງດຽວ. ທີ່ນີ້, ທີ່ຢູ່ທໍາອິດຖືກນໍາໃຊ້ໂດຍ socat ສໍາລັບການອ່ານຂໍ້ມູນ, ແລະ
ທີ່ຢູ່ທີສອງສໍາລັບການຂຽນຂໍ້ມູນ. ບໍ່ມີວິທີທີ່ຈະລະບຸທາງເລືອກພຽງແຕ່ຄັ້ງດຽວສໍາລັບ
ຖືກນໍາໃຊ້ກັບທັງສອງທີ່ຢູ່ດຽວ.

ໂດຍປົກກະຕິແລ້ວ, ທີ່ຢູ່ຈະຖືກເປີດຢູ່ໃນໂໝດອ່ານ/ຂຽນ. ເມື່ອທີ່ຢູ່ເປັນສ່ວນຫນຶ່ງຂອງຄູ່
ສະເພາະທີ່ຢູ່, ຫຼືເມື່ອທາງເລືອກ -u ຫຼື -U ຖືກນໍາໃຊ້, ທີ່ຢູ່ອາດຈະຖືກນໍາໃຊ້ພຽງແຕ່ສໍາລັບ
ການ​ອ່ານ​ຫຼື​ສໍາ​ລັບ​ການ​ຂຽນ​. ພິຈາລະນານີ້ແມ່ນສໍາຄັນກັບບາງປະເພດທີ່ຢູ່.

ດ້ວຍ socat ຮຸ່ນ 1.5.0 ແລະສູງກວ່າ, ການວິເຄາະ lexical ພະຍາຍາມຈັດການວົງຢືມແລະ
ວົງເລັບມີຄວາມຫມາຍແລະອະນຸຍາດໃຫ້ escaping ຂອງຕົວອັກສອນພິເສດ. ຖ້າຫາກວ່າຫນຶ່ງຂອງ
ຕົວ​ອັກ​ສອນ ( { [ 'ພົບ​, ຕົວ​ອັກ​ສອນ​ປິດ​ທີ່​ສອດ​ຄ້ອງ​ກັນ - ) } ] ' - ແມ່ນ​ເບິ່ງ
ສໍາລັບ; ພວກເຂົາອາດຈະຖືກຮັງ. ພາຍໃນການກໍ່ສ້າງເຫຼົ່ານີ້, socats ລັກສະນະພິເສດແລະ
ສາຍ:,!! ບໍ່ໄດ້ຈັດການເປັນພິເສດ. ຕົວອັກສອນ ແລະສະຕຣິງທັງໝົດເຫຼົ່ານັ້ນສາມາດຫລົບໜີໄດ້
ກັບ \ ຫຼືພາຍໃນ ""

ADDRESS TYPES


ພາກນີ້ອະທິບາຍປະເພດທີ່ຢູ່ທີ່ມີຢູ່ກັບຄໍາສໍາຄັນ, ຕົວກໍານົດການ, ແລະ
ຄວາມຫມາຍ.

ສ້າງ:
ເປີດ ດ້ວຍ creat() ແລະໃຊ້ຕົວອະທິບາຍໄຟລ໌ສໍາລັບການຂຽນ. ນີ້
ປະເພດທີ່ຢູ່ຕ້ອງການບໍລິບົດການຂຽນເທົ່ານັ້ນ, ເພາະວ່າໄຟລ໌ທີ່ເປີດດ້ວຍການສ້າງບໍ່ສາມາດ
ອ່ານຈາກ.
ບໍ່ສາມາດນຳໃຊ້ທຸງເຊັ່ນ O_LARGEFILE ໄດ້. ຖ້າທ່ານຕ້ອງການໃຫ້ພວກເຂົາໃຊ້ OPEN ກັບທາງເລືອກ
ສ້າງ, ສ້າງ.
ຕ້ອງເປັນເສັ້ນທາງທີ່ມີຢູ່ແລ້ວ ຫຼືບໍ່ແມ່ນເສັ້ນທາງທີ່ມີຢູ່ທີ່ຖືກຕ້ອງ. ຖ້າ ເປັນ​ຊື່
ທໍ່, creat() ອາດຕັນ; ຖ້າ ຫມາຍເຖິງເຕົ້າຮັບ, ນີ້ແມ່ນຄວາມຜິດພາດ.
ກຸ່ມທາງເລືອກ: FD,REG,NAMED
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: ຮູບແບບ, ຜູ້ໃຊ້, ກຸ່ມ, unlink-early, unlink-late, append
ເບິ່ງ: OPEN, GOPEN

EXEC:
Forks ຂະບວນການຍ່ອຍທີ່ສ້າງການສື່ສານກັບຂະບວນການແມ່ຂອງມັນແລະ
ຮຽກ​ຮ້ອງ​ໃຫ້​ໂຄງ​ການ​ທີ່​ກໍາ​ນົດ​ໄວ້​ທີ່​ມີ execvp() . ເປັນ​ຄໍາ​ສັ່ງ​ທີ່​ງ່າຍ​ດາຍ​
ດ້ວຍການໂຕ້ຖຽງທີ່ແຍກອອກໂດຍຊ່ອງຫວ່າງດຽວ. ຖ້າຊື່ໂປຣແກຣມມີ '/', the
ສ່ວນຫຼັງຈາກ '/' ສຸດທ້າຍຖືກເອົາເປັນ ARGV[0]. ຖ້າຊື່ໂຄງການແມ່ນພີ່ນ້ອງ
ເສັ້ນທາງ, execvp() semantics ສໍາລັບການຊອກຫາໂຄງການຜ່ານ $PATH ນໍາໃຊ້. ຫຼັງຈາກ
ການ​ເລີ່ມ​ຕົ້ນ​ໂຄງ​ການ​ສົບ​ຜົນ​ສໍາ​ເລັດ​, socat ຂຽນຂໍ້ມູນໃສ່ stdin ຂອງຂະບວນການແລະອ່ານຈາກ
stdout ຂອງມັນໂດຍໃຊ້ຊັອກເກັດໂດເມນ UNIX ທີ່ສ້າງຂຶ້ນໂດຍ socketpair() ຕໍ່ຄ່າເລີ່ມຕົ້ນ.
(ຕົວຢ່າງ)
ກຸ່ມທາງເລືອກ: FD, SOCKET, EXEC, FORK, TERMIOS
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: ເສັ້ນທາງ, fdin, fdout, chroot, su, su-d, nofork, pty, stderr, ctty,
setsid, ທໍ່, ເຂົ້າສູ່ລະບົບ, sigint, sigquit
ເບິ່ງ: ລະບົບ

FD:
ໃຊ້ຕົວອະທິບາຍໄຟລ໌ . ມັນຕ້ອງມີຢູ່ແລ້ວເປັນໄຟລ໌ UN*X ທີ່ຖືກຕ້ອງ
ຕົວອະທິບາຍ.
ກຸ່ມທາງເລືອກ: FD (TERMIOS, REG, SOCKET)
ເບິ່ງ: STDIO, STDIN, STDOUT, STDERR

ເປີດ:
(ເປີດໂດຍທົ່ວໄປ) ປະເພດທີ່ຢູ່ນີ້ພະຍາຍາມຈັດການລະບົບໄຟລ໌ໃດໆ ຍົກເວັ້ນ
ໄດເລກະທໍລີທີ່ເປັນປະໂຫຍດ. ອາດ​ຈະ​ເປັນ​ພີ່​ນ້ອງ​ຫຼື​ເສັ້ນ​ທາງ​ຢ່າງ​ແທ້​ຈິງ​. ຖ້າມັນແລ້ວ
ມີ, ປະເພດຂອງມັນຖືກກວດສອບ. ໃນກໍລະນີຂອງຊັອກເກັດໂດເມນ UNIX, socat ເຊື່ອມຕໍ່; ຖ້າ
ການເຊື່ອມຕໍ່ລົ້ມເຫລວ, socat ສົມມຸດຊັອກເກັດ datagram ແລະໃຊ້ sendto() ໂທ. ຖ້າ
ການເຂົ້າບໍ່ແມ່ນເຕົ້າຮັບ, socat ເປີດມັນໂດຍໃຊ້ທຸງ O_APPEND. ຖ້າມັນບໍ່
ມີຢູ່, ມັນຖືກເປີດດ້ວຍທຸງ O_CREAT ເປັນໄຟລ໌ປົກກະຕິ (ຕົວຢ່າງ).
ກຸ່ມທາງເລືອກ: FD,REG,SOCKET,NAMED,OPEN
ເບິ່ງ: ເປີດ, ສ້າງ, UNIX-CONNECT

IP-ສົ່ງ: :
ເປີດຊັອກເກັດ IP ດິບ. ອີງຕາມການສະເພາະຂອງເຈົ້າພາບຫຼືທາງເລືອກ pf, IP protocol
ລຸ້ນ 4 ຫຼື 6 ຖືກໃຊ້. ມັນໃຊ້ ເພື່ອສົ່ງຊອງໄປຫາ [ທີ່ຢູ່ IP]
ແລະຮັບແພັກເກັດຈາກໂຮສ, ບໍ່ສົນໃຈແພັກເກັດຈາກໂຮສອື່ນ. ພິທີການ 255
ໃຊ້ຊັອກເກັດດິບທີ່ມີສ່ວນຫົວ IP ເປັນສ່ວນໜຶ່ງຂອງຂໍ້ມູນ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: pf, ttl
ເບິ່ງ: IP4-SENDTO, IP6-SENDTO, IP-RECVFROM, IP-RECV, UDP-SENDTO, UNIX-SENDTO

ການໂຕ້ຕອບ:
ຕິດຕໍ່ສື່ສານກັບເຄືອຂ່າຍທີ່ເຊື່ອມຕໍ່ໃນການໂຕ້ຕອບໂດຍໃຊ້ແພັກເກັດດິບລວມທັງ
ເຊື່ອມຕໍ່ຂໍ້ມູນລະດັບ. ແມ່ນຊື່ຂອງການໂຕ້ຕອບເຄືອຂ່າຍ. ໃນປັດຈຸບັນເທົ່ານັ້ນ
ມີຢູ່ໃນ Linux. ກຸ່ມທາງເລືອກ: FD, SOCKET
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: pf, ປະເພດ
ເບິ່ງ: ip-recv

IP4-ສົ່ງ: :
ເຊັ່ນດຽວກັນກັບ IP-SENDTO, ແຕ່ໃຊ້ IPv4 ສະເໝີ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4

IP6-ສົ່ງ: :
ເຊັ່ນດຽວກັນກັບ IP-SENDTO, ແຕ່ໃຊ້ IPv6 ສະເໝີ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP6

IP-DATAGRAM: :
ສົ່ງຂໍ້ມູນຂາອອກໄປຫາທີ່ຢູ່ທີ່ລະບຸໄວ້ເຊິ່ງໂດຍສະເພາະອາດຈະເປັນການອອກອາກາດ
ຫຼືທີ່ຢູ່ multicast. ແພັກເກັດທີ່ເຂົ້າມາຢູ່ໃນເຕົ້າຮັບທ້ອງຖິ່ນຖືກກວດເບິ່ງວ່າພວກມັນ
ທີ່ຢູ່ແຫຼ່ງກົງກັບຕົວເລືອກ RANGE ຫຼື TCPWRAP. ປະເພດທີ່ຢູ່ນີ້ສາມາດຍົກຕົວຢ່າງ
ຖືກນໍາໃຊ້ເພື່ອປະຕິບັດການອອກອາກາດແບບ symmetric ຫຼື asymmetric ຫຼື multicast
ການສື່ສານ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, RANGE
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: bind, range, tcpwrap, broadcast, ip-multicast-loop,
ip-multicast-ttl, ip-multicast-if, ip-add-membership, ttl, tos, pf
ເບິ່ງ: IP4-DATAGRAM, IP6-DATAGRAM, IP-SENDTO, IP-RECVFROM, IP-RECV, UDP-DATAGRAM

IP4-DATAGRAM: :
ເຊັ່ນດຽວກັບ IP-DATAGRAM, ແຕ່ໃຊ້ IPv4 ສະເໝີ. (ຕົວຢ່າງ)
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, RANGE

IP6-DATAGRAM: :
ເຊັ່ນດຽວກັບ IP-DATAGRAM, ແຕ່ໃຊ້ IPv6 ສະເໝີ. ກະລຸນາສັງເກດວ່າ IPv6 ບໍ່ຮູ້
ອອກອາກາດ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP6, RANGE

IP-RECVFROM:
ເປີດຊັອກເກັດ IP ດິບຂອງ . ອີງຕາມທາງເລືອກ pf, IP protocol ເວີຊັ່ນ 4
ຫຼື 6 ຖືກນໍາໃຊ້. ມັນໄດ້ຮັບຫນຶ່ງຊອງຈາກເພື່ອນມິດທີ່ບໍ່ໄດ້ກໍານົດແລະອາດຈະສົ່ງຫນຶ່ງຫຼື
ຊຸດຄຳຕອບເພີ່ມເຕີມຕໍ່ກັບໝູ່ເພື່ອນນັ້ນ. ຮູບແບບນີ້ແມ່ນເປັນປະໂຫຍດໂດຍສະເພາະກັບສ້ອມ
ທາງ​ເລືອກ​ທີ່​ແຕ່​ລະ​ຊຸດ​ທີ່​ມາ​ເຖິງ - ຈາກ​ມິດ​ສະ​ຫາຍ​ທີ່​ຕົນ​ເອງ​ທີ່​ຕົນ​ເອງ - ແມ່ນ​ຈັດ​ການ​ໂດຍ​ຕົນ​ເອງ​
ຂະ​ບວນ​ການ​ຍ່ອຍ​. ນີ້ອະນຸຍາດໃຫ້ມີພຶດຕິກໍາທີ່ຄ້າຍຄືກັນກັບເຄື່ອງແມ່ຂ່າຍທີ່ອີງໃສ່ UDP ທົ່ວໄປເຊັ່ນ
ntpd ຫຼືຊື່.
ກະ​ລຸ​ນາ​ສັງ​ເກດ​ວ່າ​ຊອງ​ຕອບ​ສະ​ຫນອງ​ອາດ​ຈະ​ໄດ້​ຮັບ​ການ​ຈະ​ລາ​ຈອນ​ເຂົ້າ​ມາ​ໃນ​ເວ​ລາ​ທີ່​ຜູ້​ສົ່ງ​
ແລະທີ່ຢູ່ IP ຂອງຕົວຮັບແມ່ນຄືກັນເພາະວ່າບໍ່ມີໝາຍເລກພອດ
ຈໍາແນກເຕົ້າຮັບ.
ທີ່ຢູ່ນີ້ໃຊ້ໄດ້ດີກັບເພື່ອນຮ່ວມທີ່ຢູ່ IP-SENDTO (ເບິ່ງຂ້າງເທິງ). ພິທີການ 255
ໃຊ້ຊັອກເກັດດິບທີ່ມີສ່ວນຫົວ IP ເປັນສ່ວນໜຶ່ງຂອງຂໍ້ມູນ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, CHILD, RANGE
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: pf, fork, range, ttl, broadcast
ເບິ່ງ: IP4-RECVFROM, IP6-RECVFROM, IP-SENDTO, IP-RECV, UDP-RECVFROM,
UNIX-RECVFROM

IP4-ReCVFROM:
ເຊັ່ນດຽວກັນກັບ IP-RECVFROM, ແຕ່ສະເຫມີໃຊ້ IPv4.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, CHILD, RANGE

IP6-ReCVFROM:
ເຊັ່ນດຽວກັນກັບ IP-RECVFROM, ແຕ່ສະເຫມີໃຊ້ IPv6.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP6, CHILD, RANGE

IP-RECV:
ເປີດຊັອກເກັດ IP ດິບຂອງ . ອີງຕາມທາງເລືອກ pf, IP protocol ເວີຊັ່ນ 4
ຫຼື 6 ຖືກນໍາໃຊ້. ມັນ​ໄດ້​ຮັບ​ຊຸດ​ຈາກ​ມິດ​ສະ​ຫາຍ​ທີ່​ບໍ່​ໄດ້​ກໍາ​ນົດ​ຫຼາຍ​ແລະ​ການ​ລວມ​ເຂົ້າ​ກັນ​ໄດ້​
ຂໍ້ມູນ. ບໍ່ມີຄໍາຕອບທີ່ເປັນໄປໄດ້. ມັນສາມາດເປັນ, ຕົວຢ່າງ, ແກ້ໄຂໂດຍ socat IP-SENDTO
ທີ່ຢູ່ ມິດສະຫາຍ. Protocol 255 ໃຊ້ຊັອກເກັດດິບທີ່ມີສ່ວນຫົວ IP ເປັນສ່ວນໜຶ່ງຂອງ
ຂໍ້ມູນ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, RANGE
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: pf, range
ເບິ່ງ: IP4-RECV, IP6-RECV, IP-SENDTO, IP-RECVFROM, UDP-RECV, UNIX-RECV

IP4-RECV:
ເຊັ່ນດຽວກັນກັບ IP-RECV, ແຕ່ສະເຫມີໃຊ້ IPv4.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, RANGE

IP6-RECV:
ເຊັ່ນດຽວກັນກັບ IP-RECV, ແຕ່ສະເຫມີໃຊ້ IPv6.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP6, RANGE

ເປີດ:
ເປີດ ການນໍາໃຊ້ລະບົບ open() ໂທ (ຕົວຢ່າງ). ການດໍາເນີນງານນີ້ລົ້ມເຫລວ
ຊັອກເກັດໂດເມນ UNIX.
ໝາຍເຫດ: ປະເພດທີ່ຢູ່ນີ້ບໍ່ຄ່ອຍມີປະໂຫຍດໃນໂໝດ bidirectional.
ກຸ່ມທາງເລືອກ: FD,REG,NAMED,OPEN
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: creat, excl, noatime, nofollow, append, rdonly, wronly, lock,
readbytes, ບໍ່ສົນໃຈ
ເບິ່ງເພີ່ມ: CREATE, GOPEN, UNIX-CONNECT

OPENSSL: :
ພະຍາຍາມສ້າງການເຊື່ອມຕໍ່ SSL ກັບ [ບໍລິການ TCP] ເປີດ [ທີ່ຢູ່ IP]
ການ​ນໍາ​ໃຊ້ TCP/IP ເວີ​ຊັນ 4 ຫຼື 6 ຂຶ້ນ​ກັບ​ສະ​ເພາະ​ທີ່​ຢູ່​, ການ​ແກ້​ໄຂ​ຊື່​, ຫຼື​
ທາງເລືອກ pf.
ໝາຍເຫດ: ຈົນເຖິງເວີຊັ່ນ 1.7.2.4 ໃບຢັ້ງຢືນເຊີບເວີຖືກກວດຫາຄວາມຖືກຕ້ອງເທົ່ານັ້ນ
ຕໍ່ກັບການເກັບຮັກສາໃບຢັ້ງຢືນລະບົບ ຫຼື cafile ຫຼື capath, ແຕ່ບໍ່ແມ່ນການຈັບຄູ່ກັບ
ຊື່ຂອງເຊີບເວີ ຫຼືທີ່ຢູ່ IP ຂອງມັນ. ນັບຕັ້ງແຕ່ສະບັບ 1.7.3.0 socat ກວດເບິ່ງເພື່ອນມິດ
ໃບຢັ້ງຢືນການຈັບຄູ່ກັບ ພາລາມິເຕີຫຼືມູນຄ່າຂອງ
ທາງເລືອກ openssl-commonname. Socat ພະຍາຍາມຈັບຄູ່ກັບໃບຮັບຮອງ
subject commonName, ແລະນາມສະກຸນການຢັ້ງຢືນ subjectAltName ຊື່ DNS.
ຕົວແທນໃນໃບຢັ້ງຢືນແມ່ນຮອງຮັບ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, TCP, OPENSSL, RETRY
ທາງ​ເລືອກ​ທີ່​ເປັນ​ປະ​ໂຫຍດ​: cipher​, ວິ​ທີ​ການ​, ກວດ​ສອບ​, ຊື່​ສາ​ມັນ cafile​, capath​, ໃບ​ຢັ້ງ​ຢືນ​,
key, compress, bind, pf, connect-timeout, sourceport, retry
ເບິ່ງ: OPENSSL-LISTEN, TCP

OPENSSL-ຟັງ:
ຟັງຢູ່ໃນ tcp [ການບໍລິການ TCP]. ສະບັບ IP ແມ່ນ 4 ຫຼືຫນຶ່ງທີ່ລະບຸໄວ້ກັບ
pf. ເມື່ອການເຊື່ອມຕໍ່ຖືກຍອມຮັບ, ທີ່ຢູ່ນີ້ປະຕິບັດເປັນເຄື່ອງແມ່ຂ່າຍ SSL.
ຫມາຍເຫດ: ທ່ານອາດຈະຕ້ອງການໃຊ້ທາງເລືອກໃບຢັ້ງຢືນກັບທີ່ຢູ່ນີ້.
ຫມາຍ​ເຫດ​: ໃບ​ຢັ້ງ​ຢືນ​ລູກ​ຄ້າ​ໄດ້​ຖືກ​ກວດ​ສອບ​ພຽງ​ແຕ່​ສໍາ​ລັບ​ຄວາມ​ຖືກ​ຕ້ອງ​ກັບ cafile ຫຼື capath​,
ແຕ່ບໍ່ກົງກັບຊື່ລູກຄ້າ ຫຼືທີ່ຢູ່ IP ຂອງມັນ!
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, TCP, LISTEN, OPENSSL, CHILD, RANGE, RETRY
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: pf, cipher, method, verify, commonname cafile, capath, certificate,
ກະແຈ, ບີບອັດ, ສ້ອມ, ຜູກມັດ, ໄລຍະ, tcpwrap, su, reuseaddr, ລອງໃຫມ່
ເບິ່ງ: OPENSSL, TCP-LISTEN

ທໍ່:
ຖ້າ ມີຢູ່ແລ້ວ, ມັນຖືກເປີດ. ຖ້າມັນບໍ່ມີ, ທໍ່ທີ່ມີຊື່ແມ່ນ
ສ້າງ​ແລະ​ເປີດ​. ເລີ່ມຕົ້ນດ້ວຍສະບັບ socat 1.4.3, ທໍ່ທີ່ມີຊື່ຖືກໂຍກຍ້າຍ
ເມື່ອທີ່ຢູ່ຖືກປິດ (ແຕ່ເບິ່ງທາງເລືອກ unlink-close
ຫມາຍເຫດ: ເມື່ອທໍ່ຖືກນໍາໃຊ້ສໍາລັບທັງການອ່ານແລະການຂຽນ, ມັນເຮັດວຽກເປັນບໍລິການ echo.
ຫມາຍເຫດ: ເມື່ອທໍ່ຖືກນໍາໃຊ້ສໍາລັບການອ່ານແລະການຂຽນ, ແລະ socat ພະຍາຍາມຂຽນ
bytes ຫຼາຍກ່ວາທໍ່ສາມາດ buffer (Linux 2.4: 2048 bytes), socat ອາດຈະຕັນ.
ພິຈາລະນາໃຊ້ທາງເລືອກ socat, ຕົວຢ່າງ, -b 2048
ກຸ່ມທາງເລືອກ: FD,NAMED,OPEN
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: rdonly, nonblock, ກຸ່ມ, ຜູ້ໃຊ້, ຮູບແບບ, unlink-early
ເບິ່ງ: ທໍ່ທີ່ບໍ່ມີຊື່

ທໍ່ ສ້າງທໍ່ທີ່ບໍ່ມີຊື່ແລະໃຊ້ມັນສໍາລັບການອ່ານແລະຂຽນ. ມັນເຮັດວຽກເປັນສຽງສະທ້ອນ,
ເພາະວ່າທຸກຢ່າງທີ່ຂຽນໃສ່ມັນປາກົດໃນທັນທີເປັນຂໍ້ມູນທີ່ອ່ານ.
ຫມາຍເຫດ: ເມື່ອ socat ພະຍາຍາມຂຽນ bytes ຫຼາຍກວ່າທໍ່ສາມາດຈັດແຖວ (Linux 2.4: 2048)
bytes), socat ອາດຈະຕັນ. ພິຈາລະນາ, ຕົວຢ່າງ, ການນໍາໃຊ້ທາງເລືອກ -b 2048
ກຸ່ມທາງເລືອກ: FD
ເບິ່ງ: ທໍ່ທີ່ມີຊື່

ຕົວແທນ: : :
ເຊື່ອມຕໍ່ກັບເຊີບເວີ HTTP ເທິງພອດ 8080 ໂດຍໃຊ້ TCP/IP ເວີຊັນ 4 ຫຼື 6
ຂຶ້ນຢູ່ກັບສະເພາະທີ່ຢູ່, ຄວາມລະອຽດຊື່, ຫຼືທາງເລືອກ pf, ແລະສົ່ງ a
ເຊື່ອມຕໍ່ການຮ້ອງຂໍສໍາລັບ hostname:port. ຖ້າຕົວແທນໃຫ້ການເຂົ້າເຖິງ ແລະເຮັດສຳເລັດ
ເຊື່ອມຕໍ່ກັບເປົ້າຫມາຍ, ການໂອນຂໍ້ມູນລະຫວ່າງ socat ແລະເປົ້າຫມາຍສາມາດເລີ່ມຕົ້ນໄດ້. ຫມາຍ​ເຫດ​
ວ່າການຈະລາຈອນບໍ່ຈໍາເປັນຕ້ອງເປັນ HTTP ແຕ່ສາມາດເປັນໂປໂຕຄອນ arbitrary.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, TCP, HTTP, RETRY
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: proxyport, ignorecr, proxyauth, ແກ້ໄຂ, crnl, bind,
ເຊື່ອມຕໍ່-ໝົດເວລາ, mss, ແຫຼ່ງທີ່ມາ, ລອງໃໝ່
ເບິ່ງ: SOCKS, TCP

PTY ສ້າງ pseudo terminal (pty) ແລະໃຊ້ຕົ້ນສະບັບຂອງມັນ. ຂະບວນການອື່ນອາດຈະ
ເປີດຝ່າຍສໍາລອງຂອງ pty ໂດຍໃຊ້ມັນຄືກັບເສັ້ນ serial ຫຼື terminal. (ຕົວຢ່າງ). ຖ້າ
ທັງ ptmx ແລະກົນໄກ openpty ແມ່ນມີຢູ່, ptmx ຖືກນໍາໃຊ້ (POSIX).
ກຸ່ມທາງເລືອກ: FD,NAMED,PTY,TERMIOS
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: link, openpty, wait-slave, mode, user, group
ເບິ່ງ: UNIX-LISTEN, PIPE, EXEC, SYSTEM

READLINE
ໃຊ້ GNU readline ແລະປະຫວັດສາດໃນ stdio ເພື່ອອະນຸຍາດໃຫ້ແກ້ໄຂແລະນໍາໃຊ້ເສັ້ນການປ້ອນຂໍ້ມູນຄືນ
(ຕົວຢ່າງ).
ເນື່ອງຈາກຂໍ້ຈຳກັດການອອກໃບອະນຸຍາດ ຄຸນສົມບັດການອ່ານເສັ້ນຖືກປິດການນຳໃຊ້ໃນ Debian. ເບິ່ງ
ບັກ.
ທ່ານສາມາດໃຊ້ STDIO ແທນ.

SCTP-Connect: :
ສ້າງການເຊື່ອມຕໍ່ສະຕຣີມ SCTP ກັບທີ່ລະບຸໄວ້ [ທີ່ຢູ່ IP] ແລະ
[ການບໍລິການ TCP] ໂດຍໃຊ້ TCP/IP ເວີຊັນ 4 ຫຼື 6 ຂຶ້ນກັບທີ່ຢູ່
ສະເພາະ, ຄວາມລະອຽດຊື່, ຫຼືທາງເລືອກ pf.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, SCTP, CHILD, RETRY
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: bind, pf, connect-timeout, tos, mtudiscover, sctp-maxseg,
sctp-nodelay, nonblock, sourceport, retry, readbytes
ເບິ່ງ: SCTP4-CONNECT, SCTP6-CONNECT, SCTP-LISTEN, TCP-CONNECT

SCTP4-ເຊື່ອມຕໍ່: :
ເຊັ່ນດຽວກັນກັບ SCTP-CONNECT, ແຕ່ສະຫນັບສະຫນູນພຽງແຕ່ IPv4 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, SCTP, CHILD, RETRY

SCTP6-ເຊື່ອມຕໍ່: :
ເຊັ່ນດຽວກັນກັບ SCTP-CONNECT, ແຕ່ສະຫນັບສະຫນູນພຽງແຕ່ IPv6 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP6, SCTP, CHILD, RETRY

SCTP-ຟັງ:
ຟັງຢູ່ [ບໍລິການ TCP] ແລະຍອມຮັບການເຊື່ອມຕໍ່ TCP/IP. ຮຸ່ນ IP ແມ່ນ
4 ຫຼືຫນຶ່ງທີ່ລະບຸໄວ້ກັບທາງເລືອກທີ່ຢູ່ pf, socat ທາງເລືອກ (-4, -6), ຫຼື
ຕົວປ່ຽນແປງສະພາບແວດລ້ອມ SOCAT_DEFAULT_LISTEN_IP. ໃຫ້ສັງເກດວ່າການເປີດທີ່ຢູ່ນີ້
ປົກກະຕິແລ້ວຕັນຈົນກ່ວາລູກຄ້າເຊື່ອມຕໍ່.
ກຸ່ມທາງເລືອກ: FD, SOCKET, LISTEN, CHILD, RANGE, IP4, IP6, SCTP, RETRY
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: crnl, fork, bind, range, tcpwrap, pf, max-children, backlog,
sctp-maxseg, sctp-nodelay, su, reuseaddr, retry, cool-write
ເບິ່ງ: SCTP4-LISTEN, SCTP6-LISTEN, TCP-LISTEN, SCTP-CONNECT

SCTP4-ຟັງ:
ເຊັ່ນດຽວກັນກັບ SCTP-LISTEN, ແຕ່ສະຫນັບສະຫນູນພຽງແຕ່ IPv4 protocol.
ກຸ່ມທາງເລືອກ: FD,SOCKET,LISTEN,CHILD,RANGE,IP4,SCTP,Retry

SCTP6-ຟັງ:
ເຊັ່ນດຽວກັນກັບ SCTP-LISTEN, ແຕ່ສະຫນັບສະຫນູນພຽງແຕ່ IPv6 protocol.
ກຸ່ມທາງເລືອກ: FD,SOCKET,LISTEN,CHILD,RANGE,IP6,SCTP,Retry

SOCKET-Connect: : :
ສ້າງ socket stream ໂດຍໃຊ້ຕົວກໍານົດການ socket ທີ່ໃຫ້ຄັ້ງທໍາອິດແລະທີສອງແລະ
SOCK_STREAM (ເບິ່ງ man socket\(2)) ແລະເຊື່ອມຕໍ່ຫາທີ່ຢູ່ທາງໄກ. ສອງ
ຕົວກໍານົດການ socket ຕ້ອງໄດ້ຮັບການລະບຸໂດຍຕົວເລກ int. ປຶກສາ OS ຂອງທ່ານ
ເອກະສານແລະປະກອບມີໄຟລ໌ເພື່ອຊອກຫາຄ່າທີ່ເຫມາະສົມ. ທີ່ຢູ່ຫ່າງໄກສອກຫຼີກ
ຕ້ອງເປັນຕົວແທນຂໍ້ມູນຂອງໂຄງສ້າງ sockaddr ໂດຍບໍ່ມີ sa_family ແລະ (BSD)
sa_len ອົງປະກອບ.
ກະລຸນາສັງເກດວ່າທ່ານສາມາດ - ນອກເຫນືອຈາກທາງເລືອກຂອງກຸ່ມທີ່ລະບຸ - ຍັງໃຊ້
ທາງເລືອກຂອງໂປໂຕຄອນລະດັບສູງກວ່າເມື່ອທ່ານໃຊ້ socat option -g.
ກຸ່ມທາງເລືອກ: FD, SOCKET, CHILD, RETRY
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: bind, setsockopt-int, setsockopt-bin, setsockopt-string
ເບິ່ງ: TCP, UDP-CONNECT, UNIX-CONNECT, SOCKET-LISTEN, SOCKET-SENDTO

SOCKET-DATAGRAM: : : :
ສ້າງ socket datagram ໂດຍໃຊ້ຕົວກໍານົດການ socket ສາມອັນທໍາອິດ (ເບິ່ງຜູ້ຊາຍ
ເຕົ້າຮັບ\(2)) ແລະສົ່ງຂໍ້ມູນອອກໄປຫາທີ່ຢູ່ຫ່າງໄກສອກຫຼີກ. ສາມເຕົ້າຮັບ
ພາລາມິເຕີຕ້ອງຖືກກໍານົດໂດຍຕົວເລກ int. ປຶກສາຫາລືເອກະສານ OS ຂອງທ່ານແລະ
ລວມໄຟລ໌ເພື່ອຊອກຫາຄ່າທີ່ເຫມາະສົມ. ທີ່ຢູ່ຫ່າງໄກສອກຫຼີກຕ້ອງເປັນຂໍ້ມູນ
ການເປັນຕົວແທນຂອງໂຄງສ້າງ sockaddr ໂດຍບໍ່ມີ sa_family ແລະ (BSD) sa_len
ສ່ວນປະກອບ
ກະລຸນາສັງເກດວ່າທ່ານສາມາດ - ນອກເຫນືອຈາກທາງເລືອກຂອງກຸ່ມທີ່ລະບຸ - ຍັງໃຊ້
ທາງເລືອກຂອງໂປໂຕຄອນລະດັບສູງກວ່າເມື່ອທ່ານໃຊ້ socat option -g.
ກຸ່ມທາງເລືອກ: FD, SOCKET, RANGE
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: bind, range, setsockopt-int, setsockopt-bin, setsockopt-string
ເບິ່ງ: UDP-DATAGRAM, IP-DATAGRAM, SOCKET-SENDTO, SOCKET-RECV, SOCKET-RECVFROM

SOCKET-LISTEN: : :
ສ້າງ socket stream ໂດຍໃຊ້ຕົວກໍານົດການ socket ທີ່ໃຫ້ຄັ້ງທໍາອິດແລະທີສອງແລະ
SOCK_STREAM (ເບິ່ງ man socket\(2)) ແລະລໍຖ້າການເຊື່ອມຕໍ່ຂາເຂົ້າ
ທີ່​ຢູ່​ທ້ອງ​ຖິ່ນ​. ສອງຕົວກໍານົດການ socket ຕ້ອງໄດ້ຮັບການລະບຸໂດຍຕົວເລກ int.
ປຶກສາຫາລືເອກະສານ OS ຂອງທ່ານແລະລວມໄຟລ໌ເພື່ອຊອກຫາຄ່າທີ່ເຫມາະສົມ. ໄດ້
ທີ່ຢູ່ໃນທ້ອງຖິ່ນຕ້ອງເປັນຕົວແທນຂໍ້ມູນຂອງໂຄງສ້າງ sockaddr ໂດຍບໍ່ມີ
sa_family ແລະ (BSD) sa_len ອົງປະກອບ.
ກະລຸນາສັງເກດວ່າທ່ານສາມາດ - ນອກເຫນືອຈາກທາງເລືອກຂອງກຸ່ມທີ່ລະບຸ - ຍັງໃຊ້
ທາງເລືອກຂອງໂປໂຕຄອນລະດັບສູງກວ່າເມື່ອທ່ານໃຊ້ socat option -g.
ກຸ່ມທາງເລືອກ: FD, SOCKET, LISTEN, RANGE, CHILD, RETRY
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: setsockopt-int, setsockopt-bin, setsockopt-string
ເບິ່ງ: TCP, UDP-CONNECT, UNIX-CONNECT, SOCKET-LISTEN, SOCKET-SENDTO,
SOCKET-SENDTO

SOCKET-RECV: : : :
ສ້າງ socket ໂດຍໃຊ້ສາມຕົວກໍານົດ socket ທີ່ໃຫ້ (ເບິ່ງ man socket\(2)) ແລະ
ຜູກມັດມັນ . ຮັບຂໍ້ມູນມາຮອດ. ສາມຕົວກໍານົດການຕ້ອງ
ຈະຖືກລະບຸໂດຍຕົວເລກ int. ປຶກສາຫາລືເອກະສານ OS ຂອງທ່ານແລະລວມເອົາໄຟລ໌ໄປຫາ
ຊອກຫາຄ່າທີ່ເຫມາະສົມ. ທີ່ຢູ່ທ້ອງຖິ່ນຕ້ອງເປັນຕົວແທນຂໍ້ມູນຂອງ a
ໂຄງສ້າງ sockaddr ໂດຍບໍ່ມີອົງປະກອບ sa_family ແລະ (BSD) sa_len.
ກຸ່ມທາງເລືອກ: FD, SOCKET, RANGE
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: range, setsockopt-int, setsockopt-bin, setsockopt-string
ເບິ່ງ: UDP-RECV, IP-RECV, UNIX-RECV, SOCKET-DATAGRAM, SOCKET-SENDTO,
SOCKET-RECVFROM

SOCKET-RECVFROM: : : :
ສ້າງ socket ໂດຍໃຊ້ສາມຕົວກໍານົດ socket ທີ່ໃຫ້ (ເບິ່ງ man socket\(2)) ແລະ
ຜູກມັດມັນ . ໄດ້​ຮັບ​ຂໍ້​ມູນ​ທີ່​ມາ​ເຖິງ​ແລະ​ສົ່ງ​ຄໍາ​ຕອບ​ກັບ​ຄືນ​ໄປ​ບ່ອນ​
ຜູ້ສົ່ງ. ສາມຕົວກໍານົດທໍາອິດຕ້ອງໄດ້ຮັບການລະບຸເປັນຕົວເລກ int. ປຶກສາ
ເອກະສານ OS ຂອງທ່ານແລະລວມເອົາໄຟລ໌ເພື່ອຊອກຫາຄ່າທີ່ເຫມາະສົມ. ໄດ້
ທີ່ຢູ່ໃນທ້ອງຖິ່ນຕ້ອງເປັນຕົວແທນຂໍ້ມູນຂອງໂຄງສ້າງ sockaddr ໂດຍບໍ່ມີ
sa_family ແລະ (BSD) sa_len ອົງປະກອບ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, CHILD, RANGE
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: fork, range, setsockopt-int, setsockopt-bin, setsockopt-string
ເບິ່ງ: UDP-RECVFROM, IP-RECVFROM, UNIX-RECVFROM, SOCKET-DATAGRAM, SOCKET-SENDTO,
SOCKET-RECV

SOCKET-SENDTO: : : :
ສ້າງຊັອກເກັດໂດຍໃຊ້ສາມຕົວກໍານົດການເຕົ້າຮັບທີ່ໃຫ້ມາ (ເບິ່ງ man socket\(2)).
ສົ່ງຂໍ້ມູນຂາອອກໄປຫາທີ່ຢູ່ທີ່ລະບຸໄວ້ ແລະໄດ້ຮັບການຕອບກັບ. ສາມ
ພາລາມິເຕີຕ້ອງຖືກລະບຸເປັນຕົວເລກ int. ປຶກສາຫາລືເອກະສານ OS ຂອງທ່ານແລະ
ລວມໄຟລ໌ເພື່ອຊອກຫາຄ່າທີ່ເຫມາະສົມ. ທີ່ຢູ່ຫ່າງໄກສອກຫຼີກຕ້ອງເປັນຂໍ້ມູນ
ການເປັນຕົວແທນຂອງໂຄງສ້າງ sockaddr ໂດຍບໍ່ມີ sa_family ແລະ (BSD) sa_len
ສ່ວນປະກອບ
ກຸ່ມທາງເລືອກ: FD, SOCKET
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: bind, setsockopt-int, setsockopt-bin, setsockopt-string
ເບິ່ງ: UDP-SENDTO, IP-SENDTO, UNIX-SENDTO, SOCKET-DATAGRAM, SOCKET-RECV
SOCKET-RECVFROM

ຖົງຕີນ4: : :
ເຊື່ອມຕໍ່ຜ່ານ [ທີ່ຢູ່ IP] ກັບ [ທີ່ຢູ່ IPv4] ເປີດ [TCP
service], ໃຊ້ socks version 4 protocol over IP version 4 or 6 ຂຶ້ນກັບ
ສະເພາະທີ່ຢູ່, ຄວາມລະອຽດຊື່, ຫຼືທາງເລືອກ pf (ຕົວຢ່າງ).
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, TCP, SOCKS4, ລອງໃໝ່
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: socksuer, socksport, sourceport, pf, retry
ເບິ່ງ: SOCKS4A, PROXY, TCP

SOCKS4A: : :
ຄືກັບ SOCKS4, ແຕ່ໃຊ້ socks protocol version 4a, ດັ່ງນັ້ນຈຶ່ງເຮັດໃຫ້ການແກ້ໄຂຊື່ເຈົ້າພາບ
ກັບເຄື່ອງແມ່ຂ່າຍຂອງຖົງຕີນ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, TCP, SOCKS4, ລອງໃໝ່

ສະດຸດ ໃຊ້ຕົວອະທິບາຍໄຟລ໌ 2.
ກຸ່ມທາງເລືອກ: FD (TERMIOS, REG, SOCKET)
ເບິ່ງ: FD

STDIN ໃຊ້ຕົວອະທິບາຍໄຟລ໌ 0.
ກຸ່ມທາງເລືອກ: FD (TERMIOS, REG, SOCKET)
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: readbytes
ເບິ່ງ: FD

STDIUM ໃຊ້ຕົວອະທິບາຍໄຟລ໌ 0 ສໍາລັບການອ່ານ, ແລະ 1 ສໍາລັບການຂຽນ.
ກຸ່ມທາງເລືອກ: FD (TERMIOS, REG, SOCKET)
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: readbytes
ເບິ່ງ: FD

STDOUT ໃຊ້ຕົວອະທິບາຍໄຟລ໌ 1.
ກຸ່ມທາງເລືອກ: FD (TERMIOS, REG, SOCKET)
ເບິ່ງ: FD

ລະບົບ:
Forks ຂະບວນການຍ່ອຍທີ່ສ້າງການສື່ສານກັບຂະບວນການແມ່ຂອງມັນແລະ
ຮຽກ​ຮ້ອງ​ໃຫ້​ໂຄງ​ການ​ທີ່​ກໍາ​ນົດ​ໄວ້​ກັບ​ລະ​ບົບ () . ກະລຸນາສັງເກດວ່າ
[string] ຈະຕ້ອງບໍ່ມີ ',' ຫຼື "!!", ແລະຕົວອັກສອນ meta ຂອງແກະນັ້ນອາດຈະຕ້ອງ
ໄດ້ຮັບການປົກປ້ອງ. ຫຼັງ​ຈາກ​ການ​ເລີ່ມ​ຕົ້ນ​ໂຄງ​ການ​ສົບ​ຜົນ​ສໍາ​ເລັດ​, socat ຂຽນຂໍ້ມູນໃສ່ stdin ຂອງ
ຂະບວນການແລະອ່ານຈາກ stdout ຂອງຕົນ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, EXEC, FORK, TERMIOS
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: ເສັ້ນທາງ, fdin, fdout, chroot, su, su-d, nofork, pty, stderr, ctty,
setsid, ທໍ່, signint, sigquit
ເບິ່ງ: EXEC

TCP: :
ເຊື່ອມຕໍ່ກັບ [ບໍລິການ TCP] ເປີດ [ທີ່ຢູ່ IP] ໂດຍໃຊ້ TCP/IP ເວີຊັນ 4 ຫຼື 6
ຂຶ້ນຢູ່ກັບສະເພາະທີ່ຢູ່, ຄວາມລະອຽດຊື່, ຫຼືທາງເລືອກ pf.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, TCP, RETRY
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: crnl, bind, pf, connect-timeout, tos, mtudiscover, mss, nodelay,
nonblock, sourceport, retry, readbytes
ເບິ່ງ: TCP4, TCP6, TCP-LISTEN, UDP, SCTP-CONNECT, UNIX-CONNECT

TCP4: :
ເຊັ່ນດຽວກັນກັບ TCP, ແຕ່ພຽງແຕ່ສະຫນັບສະຫນູນ IPv4 protocol (ຕົວຢ່າງ).
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, TCP, RETRY

TCP6: :
ເຊັ່ນດຽວກັນກັບ TCP, ແຕ່ພຽງແຕ່ສະຫນັບສະຫນູນ IPv6 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP6, TCP, RETRY

TCP-ຟັງ:
ຟັງຢູ່ [ບໍລິການ TCP] ແລະຍອມຮັບການເຊື່ອມຕໍ່ TCP/IP. ຮຸ່ນ IP ແມ່ນ
4 ຫຼືຫນຶ່ງທີ່ລະບຸໄວ້ກັບທາງເລືອກທີ່ຢູ່ pf, socat ທາງເລືອກ (-4, -6), ຫຼື
ຕົວປ່ຽນແປງສະພາບແວດລ້ອມ SOCAT_DEFAULT_LISTEN_IP. ໃຫ້ສັງເກດວ່າການເປີດທີ່ຢູ່ນີ້
ປົກກະຕິແລ້ວຕັນຈົນກ່ວາລູກຄ້າເຊື່ອມຕໍ່.
ກຸ່ມທາງເລືອກ: FD, SOCKET, LISTEN, CHILD, RANGE, IP4, IP6, TCP, RETRY
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: crnl, fork, bind, range, tcpwrap, pf, max-children, backlog, mss,
su, reuseaddr, retry, cool-write
ເບິ່ງ: TCP4-LISTEN, TCP6-LISTEN, UDP-LISTEN, SCTP-LISTEN, UNIX-LISTEN,
OPENSSL-ຟັງ, TCP-CONNECT

TCP4-ຟັງ:
ເຊັ່ນດຽວກັນກັບ TCP-LISTEN, ແຕ່ພຽງແຕ່ສະຫນັບສະຫນູນ IPv4 protocol (ຕົວຢ່າງ).
ກຸ່ມທາງເລືອກ: FD,SOCKET,LISTEN,CHILD,RANGE,IP4,TCP,Retry

TCP6-ຟັງ:
ເຊັ່ນດຽວກັນກັບ TCP-LISTEN, ແຕ່ສະຫນັບສະຫນູນພຽງແຕ່ IPv6 protocol.
ທາງເລືອກທີ່ເປັນປະໂຫຍດເພີ່ມເຕີມ: ipv6only
ກຸ່ມທາງເລືອກ: FD,SOCKET,LISTEN,CHILD,RANGE,IP6,TCP,Retry

ຕຸນ[: / ]
ສ້າງອຸປະກອນ Linux TUN/TAP ແລະເລືອກທີ່ຢູ່ ແລະ netmask ໃຫ້ກັບມັນ
ມອບໃຫ້ໂດຍຕົວກໍານົດການ. ການໂຕ້ຕອບເຄືອຂ່າຍຜົນໄດ້ຮັບແມ່ນເກືອບພ້ອມສໍາລັບການນໍາໃຊ້ໂດຍ
ຂະບວນການອື່ນໆ; socat ໃຫ້ບໍລິການ "ຂ້າງສາຍ". ທີ່ຢູ່ນີ້ຕ້ອງການອ່ານ ແລະຂຽນ
ການ​ເຂົ້າ​ເຖິງ​ອຸ​ປະ​ກອນ cloning tunnel​, ໂດຍ​ປົກ​ກະ​ຕິ /dev/net/tun , ເຊັ່ນ​ດຽວ​ກັນ​ກັບ​ການ​ອະ​ນຸ​ຍາດ​
ເພື່ອກໍານົດບາງ ioctl()s. ທາງເລືອກ iff-up is ທີ່ກໍານົດໄວ້ to ທັນທີ ກະຕຸ້ນ ໄດ້
ການໂຕ້ຕອບ!
ກຸ່ມທາງເລືອກ: FD,NAMED,OPEN,TUN
ຕົວເລືອກທີ່ເປັນປະໂຫຍດ: iff-up, tun-device, tun-name, tun-type, iff-no-pi
ເບິ່ງ: ip-recv

UDP: :
ເຊື່ອມຕໍ່ກັບ [ການບໍລິການ UDP] ເປີດ [ທີ່ຢູ່ IP] ໂດຍໃຊ້ UDP/IP ເວີຊັນ 4 ຫຼື 6
ຂຶ້ນຢູ່ກັບສະເພາະທີ່ຢູ່, ຄວາມລະອຽດຊື່, ຫຼືທາງເລືອກ pf.
ກະລຸນາສັງເກດວ່າ, ເນື່ອງຈາກຄຸນສົມບັດຂອງໂປໂຕຄອນ UDP, ບໍ່ມີການເຊື່ອມຕໍ່ທີ່ແທ້ຈິງ
ສ້າງຕັ້ງຂຶ້ນ; ຂໍ້ມູນຕ້ອງຖືກສົ່ງສໍາລັບ 'ເຊື່ອມຕໍ່' ກັບເຄື່ອງແມ່ຂ່າຍ, ແລະບໍ່ມີໄຟລ໌ສິ້ນສຸດ
ສະພາບສາມາດຂົນສົ່ງໄດ້.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: ttl, tos, bind, sourceport, pf
ເບິ່ງ: UDP4, UDP6, UDP-LISTEN, TCP, IP

UDP4: :
ເຊັ່ນດຽວກັນກັບ UDP, ແຕ່ພຽງແຕ່ສະຫນັບສະຫນູນ IPv4 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4

UDP6: :
ເຊັ່ນດຽວກັນກັບ UDP, ແຕ່ພຽງແຕ່ສະຫນັບສະຫນູນ IPv6 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP6

UDP-DATAGRAM: :
ສົ່ງຂໍ້ມູນຂາອອກໄປຫາທີ່ຢູ່ທີ່ລະບຸໄວ້ເຊິ່ງໂດຍສະເພາະອາດຈະເປັນການອອກອາກາດ
ຫຼືທີ່ຢູ່ multicast. ແພັກເກັດທີ່ເຂົ້າມາຢູ່ໃນເຕົ້າຮັບທ້ອງຖິ່ນໄດ້ຖືກກວດສອບສໍາລັບ
ແກ້ໄຂພອດທາງໄກ ແລະຖ້າທີ່ຢູ່ແຫຼ່ງຂອງພວກມັນກົງກັບຕົວເລືອກ RANGE ຫຼື TCPWRAP.
ສໍາລັບຕົວຢ່າງ, ປະເພດທີ່ຢູ່ນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອປະຕິບັດ symmetric ຫຼື asymmetric
ການ​ສື່​ສານ​ອອກ​ອາ​ກາດ​ຫຼື multicast​.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, RANGE
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: bind, range, tcpwrap, broadcast, ip-multicast-loop,
ip-multicast-ttl, ip-multicast-if, ip-add-membership, ttl, tos, sourceport, pf
ເບິ່ງ: UDP4-DATAGRAM, UDP6-DATAGRAM, UDP-SENDTO, UDP-RECVFROM, UDP-RECV,
UDP-CONNECT, UDP-LISTEN, IP-DATAGRAM

UDP4-DATAGRAM: :
ເຊັ່ນດຽວກັນກັບ UDP-DATAGRAM, ແຕ່ສະຫນັບສະຫນູນພຽງແຕ່ IPv4 protocol (example1, example2).
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, RANGE

UDP6-DATAGRAM: :
ເຊັ່ນດຽວກັນກັບ UDP-DATAGRAM, ແຕ່ສະຫນັບສະຫນູນພຽງແຕ່ IPv6 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP6, RANGE

UDP-ຟັງ:
ລໍຖ້າຊຸດ UDP/IP ມາຮອດ [ການບໍລິການ UDP] ແລະ 'ເຊື່ອມຕໍ່' ກັບຄືນໄປບ່ອນ
ຜູ້ສົ່ງ. ສະບັບ IP ທີ່ຍອມຮັບແມ່ນ 4 ຫຼືຫນຶ່ງທີ່ລະບຸໄວ້ກັບທາງເລືອກ pf. ກະລຸນາ
ສັງເກດວ່າ, ເນື່ອງຈາກຄຸນສົມບັດຂອງໂປໂຕຄອນ UDP, ບໍ່ມີການເຊື່ອມຕໍ່ທີ່ແທ້ຈິງຖືກສ້າງຕັ້ງຂຶ້ນ; ຂໍ້ມູນ
ຕ້ອງໄປຮອດຈາກເພື່ອນໆກ່ອນ, ແລະບໍ່ມີເງື່ອນໄຂການສິ້ນສຸດຂອງເອກະສານສາມາດຂົນສົ່ງໄດ້.
ກະລຸນາຮັບຊາບວ່າການເປີດທີ່ຢູ່ນີ້ມັກຈະບລັອກຈົນກວ່າລູກຄ້າຈະເຊື່ອມຕໍ່.
ກຸ່ມທາງເລືອກ: FD, SOCKET, LISTEN, CHILD, RANGE, IP4, IP6
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: fork, bind, range, pf
ເບິ່ງ: UDP, UDP4-LISTEN, UDP6-LISTEN, TCP-LISTEN

UDP4-ຟັງ:
ເຊັ່ນດຽວກັນກັບ UDP-LISTEN, ແຕ່ສະຫນັບສະຫນູນພຽງແຕ່ IPv4 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, LISTEN, CHILD, RANGE, IP4

UDP6-ຟັງ:
ເຊັ່ນດຽວກັນກັບ UDP-LISTEN, ແຕ່ສະຫນັບສະຫນູນພຽງແຕ່ IPv6 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, LISTEN, CHILD, RANGE, IP6

UDP-SENDTO: :
ຕິດຕໍ່ສື່ສານກັບ socket peer ທີ່ກໍານົດໄວ້, ກໍານົດໂດຍ [ການບໍລິການ UDP] ເປີດ
[ທີ່ຢູ່ IP], ໂດຍໃຊ້ UDP/IP ເວີຊັນ 4 ຫຼື 6 ຂຶ້ນກັບທີ່ຢູ່
ສະເພາະ, ຄວາມລະອຽດຊື່, ຫຼືທາງເລືອກ pf. ມັນສົ່ງຊອງໄປຫາແລະຮັບ
packets ຈາກ socket peer ເທົ່ານັ້ນ. ທີ່ຢູ່ນີ້ປະຕິບັດ datagram ຢ່າງມີປະສິດທິພາບ
ລູກ​ຄ້າ. ມັນເຮັດວຽກໄດ້ດີກັບ socat UDP-RECVFROM ແລະ UDP-RECV ທີ່ຢູ່ peers.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: ttl, tos, bind, sourceport, pf
ເບິ່ງ: UDP4-SENDTO, UDP6-SENDTO, UDP-RECVFROM, UDP-RECV, UDP-CONNECT,
UDP-LISTEN, IP-SENDTO

UDP4-SENDTO: :
ເຊັ່ນດຽວກັນກັບ UDP-SENDTO, ແຕ່ສະຫນັບສະຫນູນພຽງແຕ່ IPv4 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4

UDP6-SENDTO: :
ເຊັ່ນດຽວກັນກັບ UDP-SENDTO, ແຕ່ສະຫນັບສະຫນູນພຽງແຕ່ IPv6 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP6

UDP-RECVFROM:
ສ້າງຊັອກເກັດ UDP ເປີດ [ການບໍລິການ UDP] ໂດຍໃຊ້ UDP/IP ເວີຊັນ 4 ຫຼື 6 ຂຶ້ນກັບ
ໃນທາງເລືອກ pf. ມັນໄດ້ຮັບຫນຶ່ງຊອງຈາກເພື່ອນມິດທີ່ບໍ່ໄດ້ກໍານົດແລະອາດຈະສົ່ງຫນຶ່ງຫຼື
ຊຸດຄຳຕອບເພີ່ມເຕີມຕໍ່ກັບໝູ່ເພື່ອນນັ້ນ. ຮູບແບບນີ້ແມ່ນເປັນປະໂຫຍດໂດຍສະເພາະກັບທາງເລືອກຂອງສ້ອມ
ບ່ອນທີ່ແຕ່ລະຊອງທີ່ມາຮອດ - ຈາກເພື່ອນທີ່ມັກ - ຖືກຈັດການໂດຍຍ່ອຍຂອງຕົນເອງ
ຂະບວນການ. ນີ້ອະນຸຍາດໃຫ້ມີພຶດຕິກໍາທີ່ຄ້າຍຄືກັນກັບເຄື່ອງແມ່ຂ່າຍທີ່ອີງໃສ່ UDP ທົ່ວໄປເຊັ່ນ ntpd ຫຼື
ຊື່. ທີ່ຢູ່ນີ້ໃຊ້ໄດ້ດີກັບຜູ້ຮ່ວມທີ່ຢູ່ socat UDP-SENDTO.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, CHILD, RANGE
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: fork, ttl, tos, bind, sourceport, pf
ເບິ່ງ: UDP4-RECVFROM, UDP6-RECVFROM, UDP-SENDTO, UDP-RECV, UDP-CONNECT,
UDP-LISTEN, IP-RECVFROM, UNIX-RECVFROM

UDP4-RECVFROM:
ເຊັ່ນດຽວກັນກັບ UDP-RECVFROM, ແຕ່ພຽງແຕ່ສະຫນັບສະຫນູນ IPv4 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, CHILD, RANGE

UDP6-RECVFROM:
ເຊັ່ນດຽວກັນກັບ UDP-RECVFROM, ແຕ່ພຽງແຕ່ສະຫນັບສະຫນູນ IPv6 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP6, CHILD, RANGE

UDP-RECV:
ສ້າງຊັອກເກັດ UDP ເປີດ [ການບໍລິການ UDP] ໂດຍໃຊ້ UDP/IP ເວີຊັນ 4 ຫຼື 6 ຂຶ້ນກັບ
ໃນທາງເລືອກ pf. ມັນ​ໄດ້​ຮັບ​ຊຸດ​ຈາກ​ມິດ​ສະ​ຫາຍ​ທີ່​ບໍ່​ໄດ້​ກໍາ​ນົດ​ຫຼາຍ​ແລະ​ການ​ລວມ​ເຂົ້າ​ກັນ​ໄດ້​
ຂໍ້ມູນ. ບໍ່ມີຄໍາຕອບທີ່ເປັນໄປໄດ້. ມັນເຮັດວຽກໄດ້ດີກັບ, ຕົວຢ່າງ, socat UDP-SENDTO address
ມິດສະຫາຍ; ມັນປະຕິບັດຕົວຄ້າຍຄືກັນກັບເຄື່ອງແມ່ຂ່າຍ syslog.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, IP6, RANGE
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: fork, pf, bind, sourceport, ttl, tos
ເບິ່ງ: UDP4-RECV, UDP6-RECV, UDP-SENDTO, UDP-RECVFROM, UDP-CONNECT, UDP-LISTEN,
IP-RECV, UNIX-RECV

UDP4-RECV:
ເຊັ່ນດຽວກັນກັບ UDP-RECV, ແຕ່ພຽງແຕ່ສະຫນັບສະຫນູນ IPv4 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP4, RANGE

UDP6-RECV:
ເຊັ່ນດຽວກັນກັບ UDP-RECV, ແຕ່ພຽງແຕ່ສະຫນັບສະຫນູນ IPv6 protocol.
ກຸ່ມທາງເລືອກ: FD, SOCKET, IP6, RANGE

UNIX-Connect:
ເຊື່ອມຕໍ່ກັບ ສົມມຸດວ່າມັນເປັນຊັອກເກັດໂດເມນ UNIX. ຖ້າ ບໍ່
ມີຢູ່, ນີ້ແມ່ນຄວາມຜິດພາດ; ຖ້າ ບໍ່ແມ່ນຊັອກເກັດໂດເມນ UNIX, ນີ້ແມ່ນ
ຄວາມຜິດພາດ; ຖ້າ ແມ່ນຊັອກເກັດໂດເມນ UNIX, ແຕ່ບໍ່ມີຂະບວນການຟັງ, ນີ້ແມ່ນ
ຄວາມ​ຜິດ​ພາດ​.
ກຸ່ມທາງເລືອກ: FD, SOCKET, NAMED, RETRY, UNIX
) ທາງເລືອກທີ່ເປັນປະໂຫຍດ: ຜູກມັດ
ເບິ່ງ: UNIX-LISTEN, UNIX-SENDTO, TCP

UNIX-ຟັງ:
ຟັງຢູ່ ໃຊ້ຊັອກເກັດສະຕຣີມໂດເມນຂອງ UNIX ແລະຍອມຮັບການເຊື່ອມຕໍ່.
ຖ້າ ມີຢູ່ແລະບໍ່ແມ່ນເຕົ້າຮັບ, ນີ້ແມ່ນຄວາມຜິດພາດ. ຖ້າ ມີຢູ່
ແລະເປັນຊັອກເກັດໂດເມນ UNIX, ການຜູກມັດກັບທີ່ຢູ່ລົ້ມເຫລວ (ທາງເລືອກໃນການໃຊ້
unlink-early!). ຈົ່ງຈື່ໄວ້ວ່າການເປີດທີ່ຢູ່ນີ້ມັກຈະບລັອກຈົນກ່ວາລູກຄ້າ
ເຊື່ອມຕໍ່. ເລີ່ມຕົ້ນດ້ວຍ socat ຮຸ່ນ 1.4.3, ການເຂົ້າລະບົບໄຟລ໌ຖືກໂຍກຍ້າຍ
ເມື່ອທີ່ຢູ່ນີ້ຖືກປິດ (ແຕ່ເບິ່ງທາງເລືອກ unlink-close) (ຕົວຢ່າງ).
ກຸ່ມທາງເລືອກ: FD,SOCKET,NAMED,LISTEN,CHILD,RETRY,UNIX
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: fork, umask, mode, user, group, unlink-early
ເບິ່ງ: UNIX-CONNECT, UNIX-RECVFROM, UNIX-RECV, TCP-LISTEN

UNIX-SENDTO:
ຕິດ​ຕໍ່​ພົວ​ພັນ​ກັບ socket ຫມູ່​ເພື່ອນ​ທີ່​ກໍາ​ນົດ​ໄວ້​, ກໍາ​ນົດ​ໂດຍ [ ] ສົມ​ມຸດ​ວ່າ​ມັນ​ແມ່ນ​
ເຕົ້າຮັບ datagram ໂດເມນ UNIX. ມັນສົ່ງແພັກເກັດໄປຫາແລະຮັບແພັກເກັດຈາກນັ້ນ
ເຕົ້າຮັບ peer ເທົ່ານັ້ນ. ກະ​ລຸ​ນາ​ສັງ​ເກດ​ວ່າ​ມັນ​ອາດ​ຈະ​ຈໍາ​ເປັນ​ຕ້ອງ​ຜູກ​ມັດ​ເຕົ້າ​ຮັບ​ໃນ​ທ້ອງ​ຖິ່ນ​
ໄປຫາທີ່ຢູ່ (ຕົວຢ່າງ /tmp/sock1, ເຊິ່ງຈະຕ້ອງບໍ່ມີມາກ່ອນ). ປະເພດທີ່ຢູ່ນີ້
ໃຊ້ໄດ້ດີກັບ socat UNIX-RECVFROM ແລະ UNIX-RECV addresses.
ກຸ່ມທາງເລືອກ: FD, SOCKET, NAMED, UNIX
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: ຜູກມັດ
ເບິ່ງ: UNIX-RECVFROM, UNIX-RECV, UNIX-CONNECT, UDP-SENDTO, IP-SENDTO

UNIX-RECVFROM:
ສ້າງຊັອກເກັດ datagram ໂດເມນ UNIX [ ]. ໄດ້ຮັບຊອງຫນຶ່ງແລະອາດຈະ
ສົ່ງຊຸດຄຳຕອບໜຶ່ງ ຫຼື ຫຼາຍກວ່ານັ້ນໄປຫາໝູ່ຄູ່ນັ້ນ. ຮູບແບບນີ້ແມ່ນເປັນປະໂຫຍດໂດຍສະເພາະ
ດ້ວຍທາງເລືອກຂອງສ້ອມທີ່ແຕ່ລະຊອງທີ່ມາຮອດ - ຈາກມິດສະຫາຍທີ່ມັກ - ຖືກຈັດການໂດຍ
ຂະບວນການຍ່ອຍຂອງຕົນເອງ. ທີ່ຢູ່ນີ້ໃຊ້ໄດ້ດີກັບຜູ້ຮ່ວມທີ່ຢູ່ socat UNIX-SENDTO.
ກຸ່ມທາງເລືອກ: FD, SOCKET, NAMED, CHILD, UNIX
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: fork
ເບິ່ງ: UNIX-SENDTO, UNIX-RECV, UNIX-LISTEN, UDP-RECVFROM, IP-RECVFROM

UNIX-RECV:
ສ້າງຊັອກເກັດ datagram ໂດເມນ UNIX [ ]. ຮັບຊຸດຈາກຫຼາຍອັນ
ມິດສະຫາຍທີ່ບໍ່ລະບຸ ແລະຮວມຂໍ້ມູນ. ບໍ່ມີຄໍາຕອບທີ່ເປັນໄປໄດ້. ມັນສາມາດເປັນ, ຕົວຢ່າງ,
ກ່າວໂດຍ socat UNIX-SENDTO ທີ່ຢູ່ peers. ມັນປະຕິບັດຕົວຄ້າຍຄືກັນກັບ syslog
ເຊີບເວີ. ກຸ່ມທາງເລືອກ: FD, SOCKET, NAMED, UNIX
ເບິ່ງ: UNIX-SENDTO, UNIX-RECVFROM, UNIX-LISTEN, UDP-RECV, IP-RECV

UNIX-Client:
ຕິດ​ຕໍ່​ພົວ​ພັນ​ກັບ socket ຫມູ່​ເພື່ອນ​ທີ່​ກໍາ​ນົດ​ໄວ້​, ກໍາ​ນົດ​ໂດຍ [ ] ສົມ​ມຸດ​ວ່າ​ມັນ​ແມ່ນ​
ເຕົ້າຮັບໂດເມນ UNIX. ມັນທໍາອິດພະຍາຍາມເຊື່ອມຕໍ່ແລະ, ຖ້າມັນລົ້ມເຫລວ, ຖືວ່າມັນເປັນ
ເຕົ້າຮັບ datagram, ດັ່ງນັ້ນຈຶ່ງສະຫນັບສະຫນູນທັງສອງປະເພດ.
ກຸ່ມທາງເລືອກ: FD, SOCKET, NAMED, UNIX
ທາງເລືອກທີ່ເປັນປະໂຫຍດ: ຜູກມັດ
ເບິ່ງ: UNIX-CONNECT, UNIX-SENDTO, GOPEN

ບົດສະຫຼຸບ-ເຊື່ອມຕໍ່:

ບົດຫຍໍ້-ຟັງ:

ບົດສະຫຼຸບ-ສົ່ງ:

ບົດສະຫຼຸບ-ຖອດຖອນຄືນ:

ບົດສະຫຼຸບ-ບົດສະຫຼຸບ:

ຕົວຫຍໍ້-ລູກຄ້າ:
ທີ່ຢູ່ Abstract ແມ່ນເກືອບຄືກັນກັບທີ່ຢູ່ UNIX ທີ່ກ່ຽວຂ້ອງຍົກເວັ້ນ
ວ່າພວກມັນບໍ່ແກ້ໄຂຊັອກເກັດທີ່ອີງໃສ່ລະບົບໄຟລ໌ແຕ່ເປັນໂດເມນ UNIX ສຳຮອງ
ພື້ນທີ່ທີ່ຢູ່. ເພື່ອຈັດເກັບອັນນີ້, ສະຕຣິງທີ່ຢູ່ຂອງຊັອກເກັດຈະຖືກນຳໜ້າດ້ວຍ "\0"
ພາຍໃນ. ຄຸນສົມບັດນີ້ສາມາດໃຊ້ໄດ້ (ພຽງແຕ່?) ໃນ Linux. ກຸ່ມທາງເລືອກແມ່ນຄືກັນ
ເຊັ່ນດຽວກັບທີ່ຢູ່ UNIX ທີ່ກ່ຽວຂ້ອງ, ຍົກເວັ້ນທີ່ຢູ່ແບບຫຍໍ້ໆບໍ່ແມ່ນ
ສະມາຊິກຂອງກຸ່ມ NAMED.

ADDRESS OPTIONS


ທາງເລືອກທີ່ຢູ່ສາມາດຖືກນໍາໃຊ້ເພື່ອແກ້ໄຂສະເພາະທີ່ຈະມີອິດທິພົນຕໍ່ຂະບວນການ
ເປີດທີ່ຢູ່ແລະຄຸນສົມບັດຂອງຊ່ອງທາງຂໍ້ມູນຜົນໄດ້ຮັບ.

ສໍາລັບເຫດຜົນດ້ານວິຊາການບໍ່ແມ່ນທຸກທາງເລືອກສາມາດນໍາໃຊ້ກັບທຸກປະເພດທີ່ຢູ່; ຕົວຢ່າງ:
ການ​ນໍາ​ໃຊ້​ທາງ​ເລືອກ socket ກັບ​ໄຟລ​໌​ປົກ​ກະ​ຕິ​ຈະ​ລົ້ມ​ເຫຼວ​. ເພື່ອຈັບການປະສົມປະສານທີ່ບໍ່ມີປະໂຫຍດຫຼາຍທີ່ສຸດ
ເປັນຕົ້ນໃນໄລຍະເປີດ, ແນວຄວາມຄິດຂອງ ທາງເລືອກ ກຸ່ມ ໄດ້​ນໍາ​ສະ​ເຫນີ​. ແຕ່ລະທາງເລືອກ
ເປັນຂອງໜຶ່ງ ຫຼືຫຼາຍກຸ່ມທາງເລືອກ. ຕົວເລືອກສາມາດຖືກນໍາໃຊ້ກັບປະເພດທີ່ຢູ່ເທົ່ານັ້ນ
ສະຫນັບສະຫນູນຢ່າງຫນ້ອຍຫນຶ່ງໃນກຸ່ມທາງເລືອກຂອງພວກເຂົາ (ແຕ່ເບິ່ງທາງເລືອກ -g).

ຕົວເລືອກທີ່ຢູ່ມີປະເພດຂໍ້ມູນທີ່ຄ່າຂອງພວກມັນຕ້ອງສອດຄ່ອງກັບ. ທຸກໆທາງເລືອກທີ່ຢູ່
ປະກອບດ້ວຍພຽງແຕ່ຄໍາສໍາຄັນຫຼືຄໍາສໍາຄັນຕິດຕາມດ້ວຍ "=value", ບ່ອນທີ່ມູນຄ່າຕ້ອງສອດຄ່ອງກັບ
ປະເພດທາງເລືອກ. ບາງທາງເລືອກທີ່ຢູ່ຈັດການຕົວກໍານົດການຂອງການໂທລະບົບ; ຕົວຢ່າງ:
ທາງເລືອກ sync ກໍານົດທຸງ O_SYNC ດ້ວຍການເປີດ () ໂທ. ທາງເລືອກອື່ນເຮັດໃຫ້ລະບົບຫຼື
ໂທຫ້ອງສະຫມຸດ; ຕົວຢ່າງ: ດ້ວຍຕົວເລືອກ `ttl=value' the setsockopt(fd, SOL_IP, IP_TTL, value,
sizeof(int)) ໂທຖືກນໍາໃຊ້. ທາງເລືອກອື່ນກໍານົດພາຍໃນ socat ຕົວແປທີ່ຖືກນໍາໃຊ້
ໃນລະຫວ່າງການໂອນຂໍ້ມູນ; ຕົວຢ່າງ: 'crnl' ເຮັດໃຫ້ເກີດການປ່ຽນຕົວອັກສອນທີ່ຊັດເຈນ. ທາງເລືອກບໍ່ຫຼາຍປານໃດ
ມີການປະຕິບັດທີ່ສັບສົນຫຼາຍ; eg, su-d (substuser-delayed) ສອບຖາມຜູ້ໃຊ້ບາງຄົນແລະ
ຂໍ້​ມູນ​ຂອງ​ກຸ່ມ​, ເກັບ​ຮັກ​ສາ​ໄວ້​, ແລະ​ນໍາ​ໃຊ້​ໃຫ້​ເຂົາ​ເຈົ້າ​ຕໍ່​ມາ​ຫຼັງ​ຈາກ​ທີ່​ເປັນ​ໄປ​ໄດ້ chroot() ໂທ​.

ຖ້າທາງເລືອກຫຼາຍແມ່ນໃຫ້ທີ່ຢູ່, ລໍາດັບຂອງພວກເຂົາໃນສະເພາະທີ່ຢູ່
ມີ (ເກືອບ) ບໍ່ມີຜົນຕໍ່ລໍາດັບຂອງການປະຕິບັດ / ຄໍາຮ້ອງສະຫມັກຂອງພວກເຂົາ. ແທນທີ່ຈະ, socat ມີ
ສ້າງຢູ່ໃນ ທາງເລືອກ ໂຄງການໄລຍະ ຮູບແບບທີ່ພະຍາຍາມເອົາທາງເລືອກໃນຄໍາສັ່ງທີ່ເປັນປະໂຫຍດ. ບາງ
ຕົວເລືອກຕ່າງໆມີຢູ່ໃນຮູບແບບຕ່າງໆ (ເຊັ່ນ: unlink, unlink-early, unlink-late) ເພື່ອຄວບຄຸມ
ເວ​ລາ​ຂອງ​ການ​ປະ​ຕິ​ບັດ​ຂອງ​ເຂົາ​ເຈົ້າ​.

ຖ້າ​ຫາກ​ວ່າ​ທາງ​ເລືອກ​ດຽວ​ກັນ​ໄດ້​ລະ​ບຸ​ໄວ້​ຫຼາຍ​ກ​່​ວາ​ຫນຶ່ງ​ຄັ້ງ​ພາຍ​ໃນ​ສະ​ເພາະ​ທີ່​ຢູ່​ຫນຶ່ງ​, ກັບ​
ຄ່າເທົ່າທຽມກັນຫຼືແຕກຕ່າງກັນ, ຜົນກະທົບແມ່ນຂຶ້ນກັບປະເພດຂອງທາງເລືອກ. ທາງ​ເລືອກ​ທີ່​ເຮັດ​ໃຫ້​ເກີດ​
ການເອີ້ນຟັງຊັນເຊັ່ນ setsockopt() ເຮັດໃຫ້ເກີດການເອີ້ນຫຼາຍອັນ. ດ້ວຍຕົວເລືອກທີ່ຕັ້ງໄວ້
ພາລາມິເຕີສໍາລັບການໂທທີ່ຕ້ອງການເຊັ່ນ open() ຫຼືກໍານົດທຸງພາຍໃນ, ມູນຄ່າຂອງສຸດທ້າຍ
ການປະກົດຕົວທາງເລືອກແມ່ນມີປະສິດທິພາບ.

ທີ່ມີຢູ່ແລ້ວຫຼື semantics ຂອງທາງເລືອກຫຼາຍແມ່ນຂຶ້ນກັບລະບົບ. Socat ປົກກະຕິແລ້ວບໍ່
ພະຍາຍາມເຮັດຕາມລັກສະນະ libc ຫຼື kernel ທີ່ຂາດຫາຍໄປ, ມັນພຽງແຕ່ສະຫນອງການໂຕ້ຕອບກັບ
ລະບົບພື້ນຖານ. ດັ່ງນັ້ນ, ຖ້າລະບົບປະຕິບັດການຂາດຄຸນສົມບັດ, ທາງເລືອກທີ່ກ່ຽວຂ້ອງແມ່ນ
ພຽງແຕ່ບໍ່ມີຢູ່ໃນເວທີນີ້.

ວັກຕໍ່ໄປນີ້ແນະນໍາພຽງແຕ່ທາງເລືອກທີ່ຢູ່ທົ່ວໄປກວ່າ. ສໍາລັບການເພີ່ມເຕີມ
ການອ້າງອິງທີ່ສົມບູນແບບແລະເພື່ອຊອກຫາຂໍ້ມູນກ່ຽວກັບຊື່ທາງເລືອກ canonical, ຊື່ນາມແຝງ,
ໄລຍະທາງເລືອກ, ແລະເວທີເບິ່ງໄຟລ໌ xio.ຊ່ວຍ.

FD ທາງເລືອກ ກຸ່ມ

ກຸ່ມຕົວເລືອກນີ້ມີຕົວເລືອກທີ່ນຳໃຊ້ກັບຕົວອະທິບາຍໄຟລ໌ຮູບແບບ UN*X, ບໍ່
ບໍ່ວ່າມັນຖືກສ້າງຂື້ນແນວໃດ. ເນື່ອງຈາກວ່າປະຈຸບັນທັງຫມົດ socat ປະເພດທີ່ຢູ່ແມ່ນຕົວອະທິບາຍໄຟລ໌
ອີງຕາມ, ທາງເລືອກເຫຼົ່ານີ້ອາດຈະຖືກນໍາໃຊ້ກັບທີ່ຢູ່ໃດໆ.
ຫມາຍ​ເຫດ​: ບາງ​ຕົວ​ເລືອກ​ເຫຼົ່າ​ນີ້​ຍັງ​ເປັນ​ສະ​ມາ​ຊິກ​ຂອງ​ກຸ່ມ​ທາງ​ເລືອກ​ອື່ນ​, ທີ່​ສະ​ຫນອງ​ໃຫ້​
ອີກອັນໜຶ່ງ, ກົນໄກທີ່ບໍ່ແມ່ນ fd. ສໍາລັບທາງເລືອກເຫຼົ່ານີ້, ມັນຂຶ້ນກັບປະເພດທີ່ຢູ່ຕົວຈິງ
ແລະກຸ່ມທາງເລືອກຂອງມັນທີ່ກົນໄກຖືກນໍາໃຊ້. ອັນທີສອງ, ກົນໄກທີ່ບໍ່ແມ່ນ fd ແມ່ນ
ຈັດລໍາດັບຄວາມສໍາຄັນ.

cloexec=
ຕັ້ງທຸງ FD_CLOEXEC ດ້ວຍ fcntl() ລະບົບການໂທຫາຄ່າ . ຖ້າຕັ້ງ, ໄດ້
ຕົວອະທິບາຍໄຟລ໌ຖືກປິດຢູ່ໃນການໂທຟັງຊັນຄອບຄົວ exec(). Socat ຈັບ​ພາຍ​ໃນ​
ທຸງນີ້ສໍາລັບ fds ມັນຄວບຄຸມ, ດັ່ງນັ້ນໃນກໍລະນີຫຼາຍທີ່ສຸດ, ຈະບໍ່ມີຄວາມຈໍາເປັນທີ່ຈະນໍາໃຊ້
ທາງເລືອກນີ້.

setlk ພະ​ຍາ​ຍາມ​ທີ່​ຈະ​ກໍາ​ນົດ​ການ​ລັອກ​ການ​ຂຽນ​ທີ່​ຕັດ​ສິນ​ໃຈ​ກັບ​ໄຟລ​໌​ທັງ​ຫມົດ​ໂດຍ​ການ​ນໍາ​ໃຊ້ fcntl(fd​,
F_SETLK, ...) ໂທລະບົບ. ຖ້າໄຟລ໌ຖືກລັອກແລ້ວ, ການໂທນີ້ສົ່ງຜົນໃຫ້ເກີດ
ຄວາມຜິດພາດ. ໃນ Linux, ເມື່ອການອະນຸຍາດໄຟລ໌ສໍາລັບກຸ່ມແມ່ນ "S" (gx,g+s), ແລະ
ລະບົບໄຟລ໌ຖືກຕິດຕັ້ງຢູ່ໃນທ້ອງຖິ່ນດ້ວຍທາງເລືອກ "mand", lock ແມ່ນບັງຄັບ, ie
ປ້ອງກັນຂະບວນການອື່ນໆຈາກການເປີດໄຟລ໌.

setlkw ພະ​ຍາ​ຍາມ​ທີ່​ຈະ​ກໍາ​ນົດ​ການ​ລໍ​ຖ້າ​ການ​ຕັດ​ສິນ​ໃຈ lock ກັບ​ໄຟລ​໌​ທັງ​ຫມົດ​ໂດຍ​ການ​ນໍາ​ໃຊ້​
fcntl(fd, F_SETLKW, ...) ໂທລະບົບ. ຖ້າໄຟລ໌ຖືກລັອກແລ້ວ, ໂທຫານີ້
ຕັນ. ເບິ່ງທາງເລືອກ setlk ສໍາລັບຂໍ້ມູນກ່ຽວກັບການເຮັດໃຫ້ລັອກນີ້ບັງຄັບ.

setlk-rd
ພະ​ຍາ​ຍາມ​ທີ່​ຈະ​ກໍາ​ນົດ​ການ​ອ່ານ​ທີ່​ຕັດ​ສິນ​ໃຈ​ສໍາ​ລັບ​ໄຟລ​໌​ທັງ​ຫມົດ​ໂດຍ​ການ​ນໍາ​ໃຊ້ fcntl(fd​,
F_SETLK, ...) ໂທລະບົບ. ຖ້າໄຟລ໌ຖືກລັອກໄວ້ແລ້ວ, ການໂທນີ້ຈະສົ່ງຜົນ
ໃນ​ຄວາມ​ຜິດ​ພາດ​. ເບິ່ງທາງເລືອກ setlk ສໍາລັບຂໍ້ມູນກ່ຽວກັບການເຮັດໃຫ້ລັອກນີ້ບັງຄັບ.

setlkw-rd
ພະ​ຍາ​ຍາມ​ທີ່​ຈະ​ກໍາ​ນົດ​ການ​ລໍ​ຖ້າ​ການ​ຕັດ​ສິນ​ໃຈ lock ກັບ​ໄຟລ​໌​ທັງ​ຫມົດ​ໂດຍ​ການ​ນໍາ​ໃຊ້​
fcntl(fd, F_SETLKW, ...) ໂທລະບົບ. ຖ້າໄຟລ໌ຖືກຂຽນໄວ້ແລ້ວຖືກລັອກ, ນີ້
ໂທຕັນ. ເບິ່ງທາງເລືອກ setlk ສໍາລັບຂໍ້ມູນກ່ຽວກັບການເຮັດໃຫ້ລັອກນີ້ບັງຄັບ.

flock-ex
ພະ​ຍາ​ຍາມ​ທີ່​ຈະ​ກໍາ​ນົດ​ການ​ປິດ​ກັ້ນ​ການ​ໃຫ້​ຄໍາ​ແນະ​ນໍາ​ທີ່​ເປັນ​ພຽງ​ແຕ່​ລັອກ​ໄຟລ​໌​ໂດຍ​ການ​ນໍາ​ໃຊ້ flock(fd​,
LOCK_EX) ໂທລະບົບ. Socat ວາງສາຍໃນການໂທນີ້ຖ້າໄຟລ໌ຖືກລັອກໂດຍຄົນອື່ນ
ຂະບວນການ.

flock-ex-nb
ພະ​ຍາ​ຍາມ​ທີ່​ຈະ​ກໍາ​ນົດ​ເປັນ​ການ​ໃຫ້​ຄໍາ​ແນະ​ນໍາ​ທີ່​ເປັນ​ພຽງ​ແຕ່​ບໍ່​ປິດ​ບັງ​ກັບ​ໄຟລ​໌​ໂດຍ​ການ​ນໍາ​ໃຊ້ flock(fd​,
LOCK_EX|LOCK_NB) ໂທລະບົບ. ຖ້າໄຟລ໌ຖືກລັອກແລ້ວ, ທາງເລືອກນີ້ສົ່ງຜົນໃຫ້
ຄວາມ​ຜິດ​ພາດ​.

flock-sh
ພະ​ຍາ​ຍາມ​ທີ່​ຈະ​ກໍາ​ນົດ​ການ​ບລັອກ​ທີ່​ປຶກ​ສາ​ທີ່​ແບ່ງ​ປັນ lock ກັບ​ໄຟລ​໌​ໂດຍ​ການ​ນໍາ​ໃຊ້ flock(fd​,
LOCK_SH) ໂທລະບົບ. Socat ວາງສາຍໃນການໂທນີ້ຖ້າໄຟລ໌ຖືກລັອກໂດຍຄົນອື່ນ
ຂະບວນການ.

flock-sh-nb
ພະ​ຍາ​ຍາມ​ທີ່​ຈະ​ກໍາ​ນົດ​ການ​ລັອກ​ຄໍາ​ແນະ​ນໍາ​ທີ່​ແບ່ງ​ປັນ​ທີ່​ບໍ່​ເປັນ​ການ​ບລັອກ​ກັບ​ໄຟລ​໌​ໂດຍ​ການ​ນໍາ​ໃຊ້ flock(fd​,
LOCK_SH|LOCK_NB) ໂທລະບົບ. ຖ້າໄຟລ໌ຖືກລັອກແລ້ວ, ທາງເລືອກນີ້ສົ່ງຜົນໃຫ້
ຄວາມ​ຜິດ​ພາດ​.

ລັອກ ກໍານົດການປິດກັ້ນການລັອກຢູ່ໃນໄຟລ໌. ໃຊ້ກົນໄກ setlk ຫຼື flock ຂຶ້ນກັບ
ມີຢູ່ໃນເວທີສະເພາະ. ຖ້າມີທັງສອງອັນ, POSIX variant
(setlkw) ຖືກນໍາໃຊ້.

user=
ກໍານົດ (ເຈົ້າຂອງ) ສາຍນ້ຳ. ຖ້າທີ່ຢູ່ເປັນສະມາຊິກຂອງ NAMED
ກຸ່ມ​ທາງ​ເລືອກ​, socat ໃຊ້ການໂທລະບົບ chown() ຫຼັງຈາກເປີດໄຟລ໌ຫຼືການຜູກມັດ
ກັບ socket ໂດເມນ UNIX (ສະພາບເຊື້ອຊາດ!). ໂດຍບໍ່ມີການເຂົ້າລະບົບໄຟລ໌, socat ຊຸດ
ຜູ້ໃຊ້ກະແສໂດຍໃຊ້ fchown() ລະບົບການໂທ. ການໂທເຫຼົ່ານີ້ອາດຈະຕ້ອງການ
ສິດທິພິເສດຂອງຮາກ.

user-late=
ຕັ້ງເຈົ້າຂອງ fd ເປັນ ກັບ fchown() ລະບົບການໂທຫຼັງຈາກເປີດຫຼື
ການ​ເຊື່ອມ​ຕໍ່​ຊ່ອງ​ທາງ​ການ​. ອັນນີ້ເປັນປະໂຫຍດພຽງແຕ່ໃນລາຍການລະບົບໄຟລ໌.

ກຸ່ມ=
ກໍານົດ ຂອງກະແສ. ຖ້າທີ່ຢູ່ນັ້ນເປັນສະມາຊິກຂອງຕົວເລືອກ NAMED
ກຸ່ມ, socat ໃຊ້ chown() ໂທລະບົບຫຼັງຈາກເປີດໄຟລ໌ຫຼືຜູກມັດກັບ
UNIX domain socket (ສະພາບເຊື້ອຊາດ!). ໂດຍບໍ່ມີການເຂົ້າລະບົບໄຟລ໌, socat ກໍານົດ
ກຸ່ມຂອງ stream ກັບ fchown() ໂທລະບົບ. ການໂທເຫຼົ່ານີ້ອາດຈະຕ້ອງການກຸ່ມ
ການເປັນສະມາຊິກ ຫຼືສິດທິພິເສດຂອງຮາກ.

group-late=
ກໍານົດກຸ່ມຂອງ fd ເປັນ ກັບ fchown() ລະບົບການໂທຫຼັງຈາກເປີດຫຼື
ການ​ເຊື່ອມ​ຕໍ່​ຊ່ອງ​ທາງ​ການ​. ອັນນີ້ເປັນປະໂຫຍດພຽງແຕ່ໃນລາຍການລະບົບໄຟລ໌.

ໂໝດ=
ກໍານົດ [mode_t] (ການອະນຸຍາດ) ຂອງການຖ່າຍທອດ. ຖ້າທີ່ຢູ່ເປັນສະມາຊິກຂອງ
ກຸ່ມຕົວເລືອກ NAMED ແລະໃຊ້ການໂທ open() ຫຼື creat(), ໂໝດຖືກນຳໃຊ້
ກັບສິ່ງເຫຼົ່ານີ້. ຖ້າທີ່ຢູ່ນັ້ນເປັນສະມາຊິກຂອງກຸ່ມຕົວເລືອກ NAMED ໂດຍບໍ່ຕ້ອງໃຊ້ສິ່ງເຫຼົ່ານີ້
ໂທ​ລະ​ບົບ​, socat ໃຊ້ chmod() ການໂທລະບົບຫຼັງຈາກເປີດລະບົບໄຟລ໌
ຫຼືຜູກມັດກັບຊັອກເກັດໂດເມນ UNIX (ສະພາບເຊື້ອຊາດ!). ຖ້າບໍ່ດັ່ງນັ້ນ, socat ກໍານົດ
ຮູບແບບການຖ່າຍທອດໂດຍໃຊ້ fchmod() . ການໂທເຫຼົ່ານີ້ອາດຈະຕ້ອງການຄວາມເປັນເຈົ້າຂອງ ຫຼືຮາກ
ສິດທິພິເສດ.

perm-late=
ກໍານົດການອະນຸຍາດຂອງ fd ເປັນມູນຄ່າ [mode_t] ໂດຍໃຊ້ລະບົບ fchmod().
ໂທຫາຫຼັງຈາກເປີດຫຼືເຊື່ອມຕໍ່ຊ່ອງ. ນີ້ແມ່ນເປັນປະໂຫຍດພຽງແຕ່ໃນລະບົບໄຟລ໌
ການອອກສຽງ.

append=
ສະເຫມີຂຽນຂໍ້ມູນໃສ່ທ້າຍຕົວຈິງຂອງໄຟລ໌. ຖ້າທີ່ຢູ່ເປັນສະມາຊິກຂອງ OPEN
ກຸ່ມ​ທາງ​ເລືອກ​, socat ໃຊ້ທຸງ O_APPEND ດ້ວຍການເອີ້ນລະບົບເປີດ () (ຕົວຢ່າງ).
ຖ້າບໍ່ດັ່ງນັ້ນ, socat ໃຊ້ fcntl(fd, F_SETFL, O_APPEND) ໂທ.

nonblock=
ພະຍາຍາມເປີດ ຫຼືໃຊ້ໄຟລ໌ໃນໂໝດບໍ່ບລັອກ. ຜົນກະທົບຂອງມັນພຽງແຕ່ແມ່ນວ່າ
connect() ໂທຂອງທີ່ຢູ່ TCP ບໍ່ໄດ້ຂັດຂວາງ, ແລະການເປີດທໍ່ທີ່ມີຊື່ສໍາລັບ
ການອ່ານບໍ່ໄດ້ຂັດຂວາງ. ຖ້າທີ່ຢູ່ເປັນສະມາຊິກຂອງກຸ່ມຕົວເລືອກ OPEN, socat
ໃຊ້ທຸງ O_NONBLOCK ດ້ວຍການໂທຫາລະບົບ open(). ຖ້າບໍ່ດັ່ງນັ້ນ, socat ໃຊ້ໄດ້
fcntl(fd, F_SETFL, O_NONBLOCK) ໂທ.

binary ເປີດໄຟລ໌ໃນໂຫມດສອງເພື່ອຫຼີກເວັ້ນການປ່ຽນຕົວສິ້ນສຸດຂອງເສັ້ນ implicit
(ຊີກວິນ).

ຂໍ້ຄວາມ ເປີດໄຟລ໌ໃນໂໝດຂໍ້ຄວາມເພື່ອບັງຄັບໃຫ້ມີການປ່ຽນຕົວສິ້ນສຸດຂອງເສັ້ນ implicit (Cygwin).

ບໍ່ມີມໍລະດົກ
ບໍ່ໄດ້ເກັບຮັກສາໄຟລ໌ນີ້ເປີດຢູ່ໃນຂະບວນການ spawned (Cygwin).

ເຢັນຂຽນ
ເອົາມັນງ່າຍເມື່ອຂຽນບໍ່ສຳເລັດດ້ວຍ EPIPE ຫຼື ECONNRESET ແລະບັນທຶກຂໍ້ຄວາມດ້ວຍ
ແຈ້ງການ ລະ​ດັບ​ແທນ​ທີ່​ຈະ​ເປັນ​ ຄວາມຜິດພາດ. ນີ້ປ້ອງກັນບໍ່ໃຫ້ໄຟລ໌ບັນທຶກຈາກການຖືກຕື່ມໃສ່
ຂໍ້ຄວາມສະແດງຂໍ້ຜິດພາດທີ່ບໍ່ມີປະໂຫຍດໃນເວລາທີ່ socat ຖືກນໍາໃຊ້ເປັນເຄື່ອງແມ່ຂ່າຍທີ່ມີປະລິມານສູງຫຼື proxy ບ່ອນທີ່
ລູກຄ້າມັກຈະຍົກເລີກການເຊື່ອມຕໍ່.
ທາງເລືອກນີ້ແມ່ນທົດລອງ.

ປິດທ້າຍ
ການ​ປ່ຽນ​ແປງ​ວິ​ທີ​ການ (ທີ່​ຢູ່​ຂຶ້ນ​) ຂອງ​ການ​ສິ້ນ​ສຸດ​ການ​ເຊື່ອມ​ຕໍ່​ເປັນ​ພຽງ​ແຕ່​ປິດ​
ຕົວອະທິບາຍໄຟລ໌. ນີ້ເປັນປະໂຫຍດໃນເວລາທີ່ການເຊື່ອມຕໍ່ຈະຖືກນໍາມາໃຊ້ໃຫມ່ໂດຍຫຼືແບ່ງປັນ
ກັບຂະບວນການອື່ນໆ (ຕົວຢ່າງ).
ໂດຍປົກກະຕິ, ການເຊື່ອມຕໍ່ຊັອກເກັດຈະສິ້ນສຸດດ້ວຍ ປິດ​ເຄື່ອງ(2​) ທີ່​ຢຸດ​ເຊົາ​ການ​
ເຕົ້າຮັບເຖິງແມ່ນວ່າມັນຖືກແບ່ງປັນໂດຍຂະບວນການຫຼາຍ. ໃກ້(2) "ຖອນການເຊື່ອມຕໍ່" ເຕົ້າຮັບ
ຈາກຂະບວນການແຕ່ເຮັດໃຫ້ມັນມີການເຄື່ອນໄຫວຕາບໃດທີ່ຍັງມີການເຊື່ອມຕໍ່ຈາກອື່ນໆ
ຂະບວນການ.
ເຊັ່ນດຽວກັນ, ໃນເວລາທີ່ທີ່ຢູ່ຂອງປະເພດ EXEC ຫຼື SYSTEM ແມ່ນສິ້ນສຸດລົງ, socat ປົກກະຕິແລ້ວຈະ
ຂ້າຂະບວນການຍ່ອຍຢ່າງຈະແຈ້ງ. ດ້ວຍຕົວເລືອກນີ້, ມັນຈະປິດໄຟລ໌
ຄຳອະທິບາຍ.

shut-none
ປ່ຽນແປງ (ທີ່ຢູ່ຂຶ້ນກັບ) ວິທີການປິດການຂຽນສ່ວນຂອງ a
ການເຊື່ອມຕໍ່ທີ່ຈະບໍ່ເຮັດຫຍັງ.

ປິດ​ເຄື່ອງ
ປ່ຽນແປງ (ທີ່ຢູ່ຂຶ້ນກັບ) ວິທີການປິດການຂຽນສ່ວນຂອງ a
ການ​ເຊື່ອມ​ຕໍ່​ກັບ shutdown\(fd, SHUT_WR). ເປັນປະໂຫຍດພຽງແຕ່ມີເຕົ້າຮັບ.

ປິດ-ປິດ
ປ່ຽນແປງ (ທີ່ຢູ່ຂຶ້ນກັບ) ວິທີການປິດການຂຽນສ່ວນຂອງ a
ການເຊື່ອມຕໍ່ປິດ\(fd).

shut-null
ເມື່ອທີ່ຢູ່ຫນຶ່ງຊີ້ໃຫ້ເຫັນ EOF, socat ຈະສົ່ງຊຸດຂະຫນາດສູນໄປຫາການຂຽນ
ຊ່ອງທາງຂອງທີ່ຢູ່ອື່ນເພື່ອໂອນເງື່ອນໄຂ EOF. ນີ້ແມ່ນເປັນປະໂຫຍດກັບ UDP
ແລະໂປໂຕຄອນ datagram ອື່ນໆ. ໄດ້ຖືກທົດສອບຕໍ່ກັບ netcat ແລະ socat ດ້ວຍທາງເລືອກ
null-eof.

null-eof
ປົກກະຕິແລ້ວ socat ຈະບໍ່ສົນໃຈແພັກເກັດທີ່ຫວ່າງເປົ່າ (ຂະຫນາດສູນ payload) ມາຮອດ datagram
ເຕົ້າຮັບ, ສະນັ້ນມັນຢູ່ລອດການສະແກນພອດ. ດ້ວຍທາງເລືອກນີ້ socat ຕີຄວາມຫວ່າງເປົ່າ
packets datagram ເປັນຕົວຊີ້ວັດ EOF (ເບິ່ງ shut-null).

ioctl-void=
ໂທຫາ ioctl() ດ້ວຍຄ່າການຮ້ອງຂໍເປັນ argument ທີສອງ ແລະ NULL ເປັນ argument ທີສາມ.
ທາງເລືອກນີ້ອະນຸຍາດໃຫ້ນໍາໃຊ້ ioctls ທີ່ບໍ່ໄດ້ປະຕິບັດຢ່າງຊັດເຈນໃນ socat.

ioctl-int= :
ໂທຫາ ioctl() ດ້ວຍຄ່າການຮ້ອງຂໍເປັນ argument ທີສອງ ແລະຄ່າ integer ເປັນ
ການໂຕ້ຖຽງທີສາມ.

ioctl-intp= :
ໂທຫາ ioctl() ດ້ວຍຄ່າຄໍາຮ້ອງຂໍເປັນ argument ທີສອງແລະຕົວຊີ້ໄປຫາ
ຄ່າ integer ເປັນ argument ທີສາມ.

ioctl-bin= :
ໂທຫາ ioctl() ດ້ວຍຄ່າການຮ້ອງຂໍເປັນອາກິວເມັນທີສອງ ແລະຕົວຊີ້ໄປຫາອັນທີ່ໃຫ້
ມູນຄ່າຂໍ້ມູນເປັນ argument ທີສາມ. ຂໍ້ມູນນີ້ຕ້ອງຖືກລະບຸໄວ້ໃນ ແບບຟອມ.

ioctl-string= :
ໂທຫາ ioctl() ດ້ວຍຄ່າການຮ້ອງຂໍເປັນອາກິວເມັນທີສອງ ແລະຕົວຊີ້ໄປຫາອັນທີ່ໃຫ້
string ເປັນ argument ທີສາມ. ແບບຟອມ.

ຊື່ ທາງເລືອກ ກຸ່ມ

ທາງເລືອກເຫຼົ່ານີ້ເຮັດວຽກຢູ່ໃນລະບົບໄຟລ໌.
ເບິ່ງຕົວເລືອກຜູ້ໃຊ້, ກຸ່ມ, ແລະຮູບແບບ.

user-early=
ການປ່ຽນແປງ (ເຈົ້າຂອງ) ຂອງການເຂົ້າລະບົບໄຟລ໌ກ່ອນທີ່ຈະເຂົ້າເຖິງມັນ, ການນໍາໃຊ້
chown() ໂທລະບົບ. ການໂທນີ້ອາດຈະຕ້ອງການສິດທິພິເສດຂອງຮາກ.

group-early=
ການປ່ຽນແປງ ຂອງການເຂົ້າລະບົບໄຟລ໌ກ່ອນທີ່ຈະເຂົ້າເຖິງມັນ, ໂດຍໃຊ້ chown()
ໂທລະບົບ. ການໂທນີ້ອາດຈະຕ້ອງການການເປັນສະມາຊິກກຸ່ມ ຫຼືສິດທິຂອງຮາກ.

perm-early=
ການປ່ຽນແປງ [mode_t​] ຂອງ​ການ​ເຂົ້າ​ລະ​ບົບ​ໄຟລ​໌​ກ່ອນ​ທີ່​ຈະ​ເຂົ້າ​ເຖິງ​ມັນ​, ການ​ນໍາ​ໃຊ້​
chmod() ໂທລະບົບ. ການໂທນີ້ອາດຈະຕ້ອງການຄວາມເປັນເຈົ້າຂອງ ຫຼືສິດທິຂອງຮາກ.

umask=
ກໍານົດ umask ຂອງຂະບວນການເປັນ [mode_t] ກ່ອນທີ່ຈະເຂົ້າເຖິງລະບົບໄຟລ໌
ເຂົ້າ (ເປັນປະໂຫຍດກັບຊັອກເກັດໂດເມນ UNIX!). ການໂທນີ້ອາດຈະສົ່ງຜົນກະທົບຕື່ມອີກ
ການ​ດໍາ​ເນີນ​ງານ​ຂອງ​ socat ຂະ​ບວນ​ການ​!

ຍົກເລີກການເຊື່ອມຕໍ່ກ່ອນໄວ
ຍົກເລີກການເຊື່ອມຕໍ່ (ເອົາ) ໄຟລ໌ກ່ອນທີ່ຈະເປີດມັນແລະເຖິງແມ່ນວ່າກ່ອນທີ່ຈະນໍາໃຊ້ຜູ້ໃຊ້ - ຕົ້ນ
ແລະອື່ນໆ

ຍົກເລີກການເຊື່ອມຕໍ່ ຍົກເລີກການເຊື່ອມຕໍ່ (ເອົາ) ໄຟລ໌ກ່ອນທີ່ຈະເຂົ້າເຖິງມັນ, ແຕ່ຫຼັງຈາກຜູ້ໃຊ້ຕົ້ນ, ແລະອື່ນໆ.

unlink-late
ຍົກເລີກການເຊື່ອມຕໍ່ (ເອົາ) ໄຟລ໌ຫຼັງຈາກເປີດມັນເພື່ອເຮັດໃຫ້ມັນບໍ່ສາມາດເຂົ້າເຖິງໄດ້ສໍາລັບຄົນອື່ນ
ຂະບວນການຫຼັງຈາກສະພາບການແຂ່ງຂັນສັ້ນ.

unlink-ປິດ
ລົບການເຂົ້າລະບົບໄຟລ໌ທີ່ຢູ່ໃນເວລາທີ່ປິດທີ່ຢູ່. ສໍາລັບທໍ່ທີ່ມີຊື່,
ຟັງ unix ໂດເມນ sockets, ແລະການເຊື່ອມຕໍ່ສັນຍາລັກຂອງທີ່ຢູ່ pty, ຄ່າເລີ່ມຕົ້ນ
ແມ່ນ 1; ສໍາລັບໄຟລ໌ທີ່ສ້າງຂຶ້ນ, ໄຟລ໌ເປີດ, ໄຟລ໌ເປີດທົ່ວໄປ, ແລະໂດເມນ unix ລູກຄ້າ
sockets ຄ່າເລີ່ມຕົ້ນແມ່ນ 0.

ເປິດ ທາງເລືອກ ກຸ່ມ

ຕົວເລືອກກຸ່ມ OPEN ອະນຸຍາດໃຫ້ຕັ້ງທຸງກັບລະບົບ open() ໂທ. ຕົວຢ່າງ, ທາງເລືອກ
`creat' ຕັ້ງທຸງ O_CREAT.
ເບິ່ງຕົວເລືອກເພີ່ມເຕີມ ແລະ nonblock.

ສ້າງ=
ສ້າງໄຟລ໌ຖ້າມັນບໍ່ມີ (ຕົວຢ່າງ).

dsync=
ບລັອກ write() ໂທຫາຈົນກ່ວາ metainfo ໄດ້ຖືກລາຍລັກອັກສອນທາງດ້ານຮ່າງກາຍກັບສື່ມວນຊົນ.

excl=
ດ້ວຍການສ້າງທາງເລືອກ, ຖ້າໄຟລ໌ມີ, ນີ້ແມ່ນຄວາມຜິດພາດ.

largefile=
ໃນລະບົບ 32 ບິດ, ອະນຸຍາດໃຫ້ໄຟລ໌ໃຫຍ່ກວ່າ 2^31 bytes.

ຕອນທ່ຽງ
ຕັ້ງຄ່າຕົວເລືອກ O_NOATIME, ດັ່ງນັ້ນການອ່ານບໍ່ປ່ຽນແປງເວລາເຂົ້າເຖິງ.

noctty=
ບໍ່ເຮັດໃຫ້ໄຟລ໌ນີ້ເປັນເຄື່ອງຄວບຄຸມ.

nofollow=
ບໍ່ປະຕິບັດຕາມການເຊື່ອມຕໍ່ສັນຍາລັກ.

nshare=
ບໍ່ອະນຸຍາດໃຫ້ແບ່ງປັນໄຟລ໌ນີ້ກັບຂະບວນການອື່ນໆ.

rshare=
ບໍ່ອະນຸຍາດໃຫ້ຂະບວນການອື່ນເປີດໄຟລ໌ນີ້ສໍາລັບການຂຽນ.

rsync=
ບລັອກ write() ຈົນກ່ວາ metainfo ຖືກຂຽນອອກທາງຮ່າງກາຍກັບສື່.

sync=
ບລັອກ write() ຈົນກວ່າຂໍ້ມູນຈະຖືກຂຽນໃສ່ສື່.

rdonly=
ເປີດໄຟລ໌ສໍາລັບການອ່ານເທົ່ານັ້ນ.

ຜິດ =
ເປີດໄຟລ໌ສໍາລັບການຂຽນເທົ່ານັ້ນ.

ລຳ ຕົ້ນ ຕັດໄຟລ໌ເປັນຂະໜາດ 0 ໃນລະຫວ່າງການເປີດມັນ.

REG ແລະ BLK ທາງເລືອກ ກຸ່ມ

ຕົວເລືອກເຫຼົ່ານີ້ມັກຈະຖືກນຳໃຊ້ກັບຕົວອະທິບາຍໄຟລ໌ UN*X, ແຕ່ຄວາມໝາຍຂອງມັນເຮັດໃຫ້
ຄວາມຮູ້ສຶກພຽງແຕ່ຢູ່ໃນໄຟລ໌ທີ່ສະຫນັບສະຫນູນການເຂົ້າເຖິງແບບສຸ່ມ.

seek=
ນຳໃຊ້ lseek(fd, , SEEK_SET) (ຫຼື lseek64 ) ໂທລະບົບ, ດັ່ງນັ້ນ
ການຈັດຕໍາແຫນ່ງຕົວຊີ້ໄຟລ໌ຢ່າງແທ້ຈິງ [off_t ຫຼື off64_t]. ກະ​ລຸ​ນາ​ບັນ​ທຶກ
ວ່າຄ່າທີ່ຂາດຫາຍໄປເປັນຄ່າເລີ່ມຕົ້ນເປັນ 1, ບໍ່ແມ່ນ 0.

seek-cur=
ນຳໃຊ້ lseek(fd, , SEEK_CUR) (ຫຼື lseek64 ) ການໂທລະບົບ, ດັ່ງນັ້ນ
ການຈັດຕຳແໜ່ງຕົວຊີ້ໄຟລ໌ [off_t ຫຼື off64_t] bytes ຂ້ອນຂ້າງກັບຂອງມັນ
ຕໍາແຫນ່ງປະຈຸບັນ (ເຊິ່ງປົກກະຕິແລ້ວແມ່ນ 0). ກະ​ລຸ​ນາ​ສັງ​ເກດ​ວ່າ​ຄ່າ​ເລີ່ມ​ຕົ້ນ​ທີ່​ຂາດ​ຫາຍ​ໄປ​
1, ບໍ່ແມ່ນ 0.

seek-end=
ນຳໃຊ້ lseek(fd, , SEEK_END) (ຫຼື lseek64 ) ໂທລະບົບ, ດັ່ງນັ້ນ
ການຈັດຕຳແໜ່ງຕົວຊີ້ໄຟລ໌ [off_t ຫຼື off64_t] bytes ຂ້ອນຂ້າງເປັນ
ໄຟ​ທີ່​ສິ້ນ​ສຸດ​ໃນ​ປະ​ຈຸ​ບັນ​. ກະລຸນາຮັບຊາບວ່າຄ່າເລີ່ມຕົ້ນທີ່ຂາດຫາຍໄປແມ່ນ 1, ບໍ່ແມ່ນ 0.

ftruncate=
ນຳໃຊ້ ftruncate(fd, ) (ຫຼື ftruncate64 ຖ້າມີ) ການໂທລະບົບ, ດັ່ງນັ້ນ
ການ​ຕັດ​ໄຟລ​໌​ຢູ່​ໃນ​ຕໍາ​ແຫນ່ງ​ [off_t ຫຼື off64_t]. ກະລຸນາສັງເກດວ່າ ກ
ຄ່າເລີ່ມຕົ້ນທີ່ຂາດຫາຍໄປແມ່ນ 1, ບໍ່ແມ່ນ 0.

secrm=

unrm=

compr=

ext2-sync=

ບໍ່ປ່ຽນແປງ =

ext2-append=

nodump=

ext2-noatime=

journal-data=

notail=

dirsync=
ຕົວເລືອກເຫຼົ່ານີ້ປ່ຽນຄຸນລັກສະນະໄຟລ໌ທີ່ບໍ່ແມ່ນມາດຕະຖານໃນລະບົບປະຕິບັດການ ແລະໄຟລ໌
ລະບົບທີ່ສະຫນັບສະຫນູນລັກສະນະເຫຼົ່ານີ້, ເຊັ່ນ Linux ກັບ ext2fs, ext3fs, ຫຼື reiserfs.
ເບິ່ງ man 1 chattr ສໍາລັບຂໍ້ມູນກ່ຽວກັບທາງເລືອກເຫຼົ່ານີ້. ກະລຸນາສັງເກດວ່າອາດຈະມີ
ເງື່ອນໄຂການແຂ່ງຂັນລະຫວ່າງການສ້າງໄຟລ໌ແລະການນໍາໃຊ້ທາງເລືອກເຫຼົ່ານີ້.

PROCESS ທາງເລືອກ ກຸ່ມ

ຕົວເລືອກຂອງກຸ່ມນີ້ປ່ຽນຄຸນສົມບັດຂອງຂະບວນການແທນທີ່ຈະສົ່ງຜົນກະທົບຕໍ່ຂໍ້ມູນດຽວເທົ່ານັ້ນ
ຊ່ອງ. ສໍາລັບທີ່ຢູ່ EXEC ແລະລະບົບ ແລະສໍາລັບ LISTEN ແລະ CONNECT ປະເພດທີ່ຢູ່ກັບ
ທາງເລືອກ FORK, ທາງເລືອກເຫຼົ່ານີ້ໃຊ້ກັບຂະບວນການເດັກແທນທີ່ຈະເປັນຂະບວນການ socat ຕົ້ນຕໍ.

chroot=
ດໍາເນີນການ chroot() ເພື່ອ ຫຼັງ​ຈາກ​ການ​ປຸງ​ແຕ່ງ​ທີ່​ຢູ່​
(ຕົວຢ່າງ). ການໂທນີ້ອາດຈະຕ້ອງການສິດທິພິເສດຂອງຮາກ.

chroot-early=
ດໍາເນີນການ chroot() ເພື່ອ ກ່ອນທີ່ຈະເປີດທີ່ຢູ່. ໂທນີ້
ອາດຈະຮຽກຮ້ອງໃຫ້ມີສິດທິພິເສດຂອງຮາກ.

setgid=
ປ່ຽນແປງຫຼັກ ຂອງຂະບວນການຫຼັງຈາກການປຸງແຕ່ງທີ່ຢູ່. ໂທນີ້
ອາດຈະຮຽກຮ້ອງໃຫ້ມີສິດທິພິເສດຂອງຮາກ. ກະ​ລຸ​ນາ​ສັງ​ເກດ​ວ່າ​ທາງ​ເລືອກ​ນີ້​ບໍ່​ໄດ້​ຫຼຸດ​ລົງ​ອື່ນໆ​
ສິດທິພິເສດທີ່ກ່ຽວຂ້ອງກັບກຸ່ມ.

setgid-early=
ເຊັ່ນດຽວກັນກັບ setgit ແຕ່ຖືກປະຕິບັດກ່ອນທີ່ຈະເປີດທີ່ຢູ່.

setuid=
ການປ່ຽນແປງ (ເຈົ້າຂອງ) ຂະບວນການຫຼັງຈາກການປຸງແຕ່ງທີ່ຢູ່. ໂທນີ້
ອາດຈະຮຽກຮ້ອງໃຫ້ມີສິດທິພິເສດຂອງຮາກ. ກະລຸນາຮັບຊາບວ່າຕົວເລືອກນີ້ຈະບໍ່ລຸດລົງກຸ່ມ
ສິດທິພິເສດທີ່ກ່ຽວຂ້ອງ. ກວດເບິ່ງວ່າທາງເລືອກ su ເຫມາະກັບຄວາມຕ້ອງການຂອງເຈົ້າ.

setuid-early=
ເຊັ່ນດຽວກັນກັບ setuid ແຕ່ຖືກປະຕິບັດກ່ອນທີ່ຈະເປີດທີ່ຢູ່.

su=
ການປ່ຽນແປງ (ເຈົ້າຂອງ) ແລະກຸ່ມຂອງຂະບວນການຫຼັງຈາກການປຸງແຕ່ງທີ່ຢູ່
(ຕົວຢ່າງ). ການໂທນີ້ອາດຈະຕ້ອງການສິດທິພິເສດຂອງຮາກ.

su-d=
ຊື່ສັ້ນສໍາລັບ substuser-delayed. ການປ່ຽນແປງ (ເຈົ້າຂອງ) ແລະກຸ່ມຂອງ
ຂະບວນການຫຼັງຈາກການປຸງແຕ່ງທີ່ຢູ່ (ຕົວຢ່າງ). ຜູ້ໃຊ້ແລະກຸ່ມຂອງລາວແມ່ນ
ໄດ້ມາ ກ່ອນທີ່ຈະ chroot ທີ່ເປັນໄປໄດ້ (). ການໂທນີ້ອາດຈະຕ້ອງການສິດທິພິເສດຂອງຮາກ.

setpgid=
ເຮັດໃຫ້ຂະບວນການເປັນສະມາຊິກຂອງກຸ່ມຂະບວນການທີ່ກໍານົດໄວ້ . ຖ້າບໍ່ມີຄ່າ
ໃຫ້, ຫຼືຖ້າຄ່າແມ່ນ 0 ຫຼື 1, ຂະບວນການກາຍເປັນຜູ້ນໍາຂອງຂະບວນການໃຫມ່
ກຸ່ມ.

ຕັ້ງ ເຮັດໃຫ້ຂະບວນການເປັນຜູ້ນໍາຂອງກອງປະຊຸມໃຫມ່ (ຕົວຢ່າງ).

READLINE ທາງເລືອກ ກຸ່ມ

ເນື່ອງຈາກຂໍ້ຈຳກັດການອອກໃບອະນຸຍາດ ຄຸນສົມບັດການອ່ານເສັ້ນຖືກປິດການນຳໃຊ້ໃນ Debian (ເບິ່ງ BUGS).
ຕົວເລືອກເຫຼົ່ານີ້ນຳໃຊ້ກັບປະເພດທີ່ຢູ່ readline.

ປະຫວັດສາດ=
ອ່ານແລະຂຽນປະຫວັດສາດຈາກ / ໄປ (ຕົວຢ່າງ).

ບໍ່ເຕືອນ
ນັບຕັ້ງແຕ່ສະບັບ 1.4.0, socat ຕໍ່ຄ່າເລີ່ມຕົ້ນພະຍາຍາມກໍານົດການກະຕຸ້ນເຕືອນ - ນັ້ນແມ່ນຫຼັງຈາກນັ້ນ
ຜ່ານ​ໄປ​ຫາ​ການ​ໂທ readline - ໂດຍ​ການ​ຈື່​ຈໍາ​ເສັ້ນ​ທີ່​ບໍ່​ຄົບ​ຖ້ວນ​ສຸດ​ທ້າຍ​ຂອງ​
ຜົນຜະລິດ. ດ້ວຍຕົວເລືອກນີ້, socat ບໍ່ຜ່ານການກະຕຸ້ນໃຫ້ອ່ານເສັ້ນ, ສະນັ້ນມັນເລີ່ມຕົ້ນ
ການແກ້ໄຂເສັ້ນຢູ່ໃນຖັນທໍາອິດຂອງ terminal.

nocho=
ລະບຸຮູບແບບປົກກະຕິສໍາລັບການເຕືອນທີ່ປ້ອງກັນການປ້ອນຂໍ້ມູນຕໍ່ໄປນີ້
ຈາກການສະແດງຢູ່ໃນຫນ້າຈໍແລະຈາກການຖືກເພີ່ມເຂົ້າໃນປະຫວັດສາດ. ການກະຕຸ້ນເຕືອນ
ຖືກກໍານົດເປັນຂໍ້ຄວາມທີ່ຖືກສົ່ງອອກໄປຫາທີ່ຢູ່ readline ຫຼັງຈາກສຸດທ້າຍ
ຕົວອັກສອນແຖວໃໝ່ ແລະກ່ອນທີ່ຈະພິມຕົວອັກສອນທີ່ປ້ອນເຂົ້າ. ຮູບແບບແມ່ນປົກກະຕິ
expression, eg "^[pp]assword:.*$" ຫຼື "([Uu]ser:|[pp]assword:)". ເບິ່ງ regex\(7)
ສໍາລັບລາຍລະອຽດ. (ຕົວຢ່າງ)

prompt=
ຖ່າຍທອດສະຕຣິງຕາມການເຕືອນໄປຫາຟັງຊັນ readline. readline ພິມການເຕືອນນີ້
​ເມື່ອ​ກ້າວ​ຜ່ານ​ປະຫວັດສາດ. ຖ້າສະຕຣິງນີ້ກົງກັບການເຕືອນຄົງທີ່ທີ່ອອກໃຫ້
ໂດຍໂຄງການໂຕ້ຕອບຢູ່ໃນທີ່ຢູ່ socat ອື່ນໆ, ເບິ່ງແລະຄວາມຮູ້ສຶກທີ່ສອດຄ່ອງກັນ
ຖືກເກັບໄວ້.

ຄໍາຮ້ອງສະຫມັກ ທາງເລືອກ ກຸ່ມ

ກຸ່ມນີ້ມີທາງເລືອກທີ່ເຮັດວຽກໃນລະດັບຂໍ້ມູນ. ກະລຸນາຮັບຊາບວ່າຕົວເລືອກເຫຼົ່ານີ້ນຳໃຊ້ເທົ່ານັ້ນ
ໄປຫາຂໍ້ມູນ "ດິບ" ທີ່ໂອນໂດຍ socat, ແຕ່ບໍ່ແມ່ນຂໍ້ມູນໂປຣໂຕຄໍທີ່ໃຊ້ໂດຍທີ່ຢູ່ເຊັ່ນ
ຕົວແທນ.

cr ປ່ຽນຕົວອັກສອນສິ້ນສຸດເສັ້ນເລີ່ມຕົ້ນ NL ('\n', 0x0a) ເປັນ/ຈາກ CR ('\r',
0x0d) ເມື່ອຂຽນ/ອ່ານຢູ່ໃນຊ່ອງນີ້.

crnl ປ່ຽນຕົວອັກສອນສິ້ນສຸດເສັ້ນເລີ່ມຕົ້ນ NL ('\n', 0x0a) ເປັນ/ຈາກ CRNL
("\r\n", 0x0d0a) ເມື່ອຂຽນ/ອ່ານຢູ່ຊ່ອງນີ້ (ຕົວຢ່າງ). ຫມາຍເຫດ: socat
ພຽງແຕ່ຖອດຕົວອັກສອນ CR ທັງໝົດອອກ.

ບໍ່ສົນໃຈ
ເມື່ອ EOF ເກີດຂື້ນໃນຊ່ອງທາງນີ້, socat ບໍ່ສົນໃຈມັນ ແລະພະຍາຍາມອ່ານຂໍ້ມູນເພີ່ມເຕີມ (ເຊັ່ນ:
"tail -f") (ຕົວຢ່າງ).

readbytes=
socat ອ່ານຫຼາຍໄບຕ໌ຈາກທີ່ຢູ່ນີ້ (ທີ່ຢູ່ໃຫ້ຫຼາຍເທົ່ານັ້ນ
bytes ສໍາລັບການໂອນແລະທໍາທ່າວ່າຢູ່ທີ່ EOF ຫຼັງຈາກນັ້ນ). ຕ້ອງໃຫຍ່ກວ່າ 0.

lockfile=
ຖ້າມີ lockfile, ອອກມາດ້ວຍຄວາມຜິດພາດ. ຖ້າບໍ່ມີ lockfile, ສ້າງມັນແລະ
ສືບຕໍ່, unlinks lockfile ກ່ຽວກັບການອອກ.

waitlock=
ຖ້າມີ lockfile, ລໍຖ້າຈົນກ່ວາມັນຫາຍໄປ. ເມື່ອ lockfile ບໍ່ມີ,
ສ້າງມັນແລະສືບຕໍ່, unlinks lockfile ສຸດອອກ.

ໜີ =
ລະບຸລະຫັດຕົວເລກຂອງຕົວອັກສອນທີ່ກະຕຸ້ນ EOF ໃນກະແສການປ້ອນຂໍ້ມູນ. ມັນ
ມີປະໂຫຍດກັບ terminal ໃນຮູບແບບດິບ (ຕົວຢ່າງ).

ກະເປົາ ທາງເລືອກ ກຸ່ມ

ທາງເລືອກເຫຼົ່ານີ້ແມ່ນມີຈຸດປະສົງສໍາລັບທຸກປະເພດຂອງເຕົ້າຮັບ, ເຊັ່ນ: IP ຫຼືໂດເມນ UNIX. ສ່ວນຫຼາຍແມ່ນ
ນຳໃຊ້ກັບ setsockopt() call.

bind=
ຜູກ​ມັດ​ເຕົ້າ​ຮັບ​ກັບ​ທີ່​ຢູ່​ເຕົ້າ​ຮັບ​ໃຫ້​ໂດຍ​ການ​ນໍາ​ໃຊ້​ການ​ໂທ​ລະ​ບົບ bind()​. ແບບຟອມ
ຂອງ ແມ່ນໂດເມນ socket ຂຶ້ນກັບ: IP4 ແລະ IP6 ອະນຸຍາດໃຫ້ແບບຟອມ
[hostname|hostaddress][:(service|port)] (ຕົວຢ່າງ), UNIX domains ຕ້ອງການ
.

connect-timeout=
ຍົກເລີກຄວາມພະຍາຍາມເຊື່ອມຕໍ່ຫຼັງຈາກ [timeval] ກັບສະຖານະຄວາມຜິດພາດ.

so-bindtodevice=
ມັດເຕົ້າສຽບໃສ່ກັບທີ່ໃຫ້ . ຕົວເລືອກນີ້ອາດຈະຕ້ອງການຮາກ
ສິດທິພິເສດ.

ການອອກອາກາດ
ສໍາລັບເຕົ້າຮັບ datagram, ອະນຸຍາດໃຫ້ສົ່ງໄປຫາທີ່ຢູ່ອອກອາກາດແລະຊຸດຮັບ
ກ່າວເຖິງທີ່ຢູ່ອອກອາກາດ.

debug ເປີດໃຊ້ການດີບັກຊັອກເກັດ.

dontroute
ພຽງແຕ່ຕິດຕໍ່ສື່ສານກັບເພື່ອນມິດທີ່ເຊື່ອມຕໍ່ໂດຍກົງ, ບໍ່ໄດ້ໃຊ້ routers.

ຮັກ​ສາ​ຊີ​ວິດ
ເປີດໃຊ້ການສົ່ງ Keepalive ໃນເຕົ້າຮັບ.

linger=
ຂັດຂວາງ shutdown() ຫຼືປິດ() ຈົນກ່ວາການໂອນຂໍ້ມູນສໍາເລັດຫຼືໃຫ້
timeout [int] ໝົດອາຍຸແລ້ວ.

oobinline
ວາງຂໍ້ມູນນອກແຖບໃນກະແສຂໍ້ມູນປ້ອນເຂົ້າ.

ບູລິມະສິດ=
ກໍານົດໂປໂຕຄອນທີ່ກໍານົດ [ ] ສໍາລັບການຫຸ້ມຫໍ່ຂາອອກ.

rcvbuf=
ກໍານົດຂະຫນາດຂອງຮັບ buffer ຫຼັງຈາກ socket() ໂທຫາ [int]. ກັບ
ເຕົ້າຮັບ TCP, ຄ່ານີ້ເທົ່າກັບຂະຫນາດປ່ອງຢ້ຽມສູງສຸດຂອງເຕົ້າຮັບ.

rcvbuf-late=
ກຳນົດຂະໜາດຂອງຕົວຮັບບັບເຟີເມື່ອຊັອກເກັດຖືກເຊື່ອມຕໍ່ແລ້ວ
[int]. ດ້ວຍເຕົ້າຮັບ TCP, ຄ່ານີ້ກົງກັບປ່ອງຢ້ຽມສູງສຸດຂອງເຕົ້າຮັບ
ຂະຫນາດ.

rcvlowat=
ກໍານົດຈໍານວນຕໍາ່ສຸດທີ່ໄດ້ຮັບ bytes [int] ຈົນກ່ວາຊັ້ນ socket ຈະ
ຜ່ານຂໍ້ມູນ buffed ກັບ socat.

rcvtimeo=
ກຳນົດເວລາຮັບ [timeval].

reuseaddr
ອະ​ນຸ​ຍາດ​ໃຫ້​ເຕົ້າ​ຮັບ​ອື່ນໆ​ທີ່​ຈະ​ຜູກ​ມັດ​ກັບ​ທີ່​ຢູ່​ເຖິງ​ແມ່ນ​ວ່າ​ພາກ​ສ່ວນ​ຂອງ​ມັນ (ເຊັ່ນ​: ທ້ອງ​ຖິ່ນ​
port) ຖືກໃຊ້ແລ້ວໂດຍ socat (ຕົວຢ່າງ).

sndbuf=
ກຳນົດຂະໜາດຂອງ send buffer ຫຼັງຈາກ socket() call to [int].

sndbuf-late=
ກໍານົດຂະຫນາດຂອງ buffer ສົ່ງໃນເວລາທີ່ socket ແມ່ນເຊື່ອມຕໍ່ກັບ [int].

sndlowat=
ລະບຸຈໍານວນໄບຕ້່ໍາສຸດໃນ send buffer ຈົນກ່ວາຊັ້ນ socket
ຈະສົ່ງຂໍ້ມູນໄປຫາ [int].

sndtimeo=
ກຳນົດເວລາສົ່ງເປັນວິນາທີ [timeval].

pf=
ບັງຄັບໃຊ້ສະບັບ IP ຫຼືໂປຣໂຕຄໍທີ່ລະບຸ. ສາມາດເປັນບາງສິ່ງບາງຢ່າງ
ເຊັ່ນ "ip4" ຫຼື "ip6". ຄ່າຜົນໄດ້ຮັບແມ່ນໃຊ້ເປັນ argument ທໍາອິດກັບ socket()
ຫຼື socketpair() ໂທ. ຕົວເລືອກນີ້ມີຜົນກະທົບຕໍ່ການແກ້ໄຂທີ່ຢູ່ແລະຄວາມຕ້ອງການ
syntax ຂອງ bind ແລະຕົວເລືອກ range.

type=
ກໍາ​ນົດ​ປະ​ເພດ​ຂອງ socket ໄດ້​, ລະ​ບຸ​ໄວ້​ເປັນ argument ທີ​ສອງ​ກັບ socket() ຫຼື​
socketpair() ໂທ, ຫາ [int]. ການແກ້ໄຂທີ່ຢູ່ບໍ່ໄດ້ຮັບຜົນກະທົບຈາກເລື່ອງນີ້
ທາງເລືອກ. ພາຍໃຕ້ Linux, 1 ຫມາຍຄວາມວ່າ socket oriented stream, 2 ຫມາຍຄວາມວ່າ socket datagram, ແລະ
3 ຫມາຍຄວາມວ່າເຕົ້າສຽບດິບ.

prototype
ຕັ້ງຄ່າໂປຣໂຕຄໍຂອງເຕົ້າຮັບ, ລະບຸວ່າເປັນອາກິວເມັນທີສາມໃຫ້ກັບ socket() ຫຼື
socketpair() ໂທ, ຫາ [int]. ການແກ້ໄຂທີ່ຢູ່ບໍ່ໄດ້ຮັບຜົນກະທົບຈາກ
ທາງເລືອກນີ້. 6 ຫມາຍຄວາມວ່າ TCP, 17 ຫມາຍຄວາມວ່າ UDP.

ສະແຕມເວລາ
ຕັ້ງຕົວເລືອກຊັອກເກັດ SO_TIMESTAMP. ນີ້ເຮັດໃຫ້ການຮັບແລະບັນທຶກຂອງ
ຂໍ້​ຄວາມ​ສໍາ​ຮອງ​ເວ​ລາ​.

setsockopt-int= : :
ຮຽກ​ຮ້ອງ setsockopt() ສໍາ​ລັບ socket ທີ່​ມີ​ຕົວ​ກໍາ​ນົດ​ການ​ໃຫ້​. ລະດັບ [int] ຖືກນໍາໃຊ້
ເປັນ argument ທີສອງກັບ setsockopt() ແລະກໍານົດ layer, ເຊັ່ນ: SOL_TCP ສໍາລັບ TCP (6.
ໃນ Linux), ຫຼື SOL_SOCKET ສໍາລັບຊັ້ນເຕົ້າຮັບ (1 ໃນ Linux). optname [int] ແມ່ນ
argument ທີສາມກັບ setsockopt() ແລະບອກວ່າຈະຕັ້ງທາງເລືອກ socket ໃດ. ສໍາ​ລັບ
ຕົວ​ເລກ​ຕົວ​ຈິງ​ທີ່​ທ່ານ​ອາດ​ຈະ​ຕ້ອງ​ໄດ້​ຊອກ​ຫາ​ທີ່​ເຫມາະ​ສົມ​ປະ​ກອບ​ມີ​ໄຟລ​໌​ຂອງ​ທ່ານ​
ລະບົບ. ພາຣາມິເຕີ setsockopt() ທີ 4, ຄ່າ [int], ຖືກສົ່ງກັບຟັງຊັນຕໍ່
ຕົວຊີ້, ແລະສໍາລັບຄວາມຍາວພາລາມິເຕີ sizeof\(int) ແມ່ນປະຕິບັດ implicitely.

setsockopt-bin= : :
ເຊັ່ນດຽວກັນກັບ setsockopt-int, ແຕ່ ຕ້ອງໄດ້ຮັບການສະຫນອງໃຫ້ໃນຮູບແບບ dalan ແລະກໍານົດເປັນ
ລຳ ດັບ arbitrary ຂອງ bytes; ຕົວກໍານົດການຄວາມຍາວແມ່ນໄດ້ມາຈາກອັດຕະໂນມັດ
ຂໍ້ມູນ.

setsockopt-string= : :
ເຊັ່ນດຽວກັນກັບ setsockopt-int, ແຕ່ ຕ້ອງເປັນສະຕຣິງ. ສະຕຣິງນີ້ຖືກສົ່ງໄປຫາ
ຟັງຊັນທີ່ມີຕົວອັກສອນ null ຕໍ່ທ້າຍ, ແລະຕົວກໍານົດຄວາມຍາວແມ່ນອັດຕະໂນມັດ
ໄດ້​ມາ​ຈາກ​ຂໍ້​ມູນ​.

UNIX ທາງເລືອກ ກຸ່ມ

ຕົວເລືອກເຫຼົ່ານີ້ນຳໃຊ້ກັບທີ່ຢູ່ຂອງໂດເມນ UNIX.

unix-tightsocklen=[0|1]
ໃນການດໍາເນີນງານຂອງເຕົ້າຮັບ, ຜ່ານຄວາມຍາວທີ່ຢູ່ຂອງເຕົ້າຮັບທີ່ບໍ່ລວມທັງຫມົດ
struct sockaddr_un record ແຕ່ (ນອກຈາກອົງປະກອບອື່ນໆ) ພຽງແຕ່ສ່ວນທີ່ກ່ຽວຂ້ອງຂອງ
ຊື່ໄຟລ໌ ຫຼືສະຕຣິງທີ່ບໍ່ມີຕົວຕົນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

IP4 ແລະ IP6 ທາງເລືອກ ກຸ່ມ

ຕົວເລືອກເຫຼົ່ານີ້ສາມາດໃຊ້ກັບຊັອກເກັດທີ່ອີງໃສ່ IPv4 ແລະ IPv6.

tos=
ກໍານົດພື້ນທີ່ TOS (ປະເພດຂອງການບໍລິການ) ຂອງແພັກເກັດຂາອອກເປັນ [byte] (ເບິ່ງ RFC
791).

ttl=
ກໍານົດຊ່ອງຂໍ້ມູນ TTL (ເວລາດໍາລົງຊີວິດ) ຂອງແພັກເກັດຂາອອກເປັນ [byte].

ip-options=
ຕັ້ງຄ່າທາງເລືອກ IP ເຊັ່ນ: ເສັ້ນທາງແຫຼ່ງ. ຕ້ອງໄດ້ຮັບການໃຫ້ໃນຮູບແບບຄູ່, ແນະນໍາ
ຮູບແບບແມ່ນ "x" ຊັ້ນນໍາຕາມດ້ວຍຕົວເລກຄູ່ຂອງຕົວເລກ hex. ທາງເລືອກນີ້ອາດຈະ
ຖືກນໍາໃຊ້ຫຼາຍຄັ້ງ, ຂໍ້ມູນຖືກຄັດຕິດ. ຕົວຢ່າງ: ເພື່ອເຊື່ອມຕໍ່ກັບເຈົ້າພາບ 10.0.0.1 ຜ່ານ
ບາງ gateway ໂດຍໃຊ້ເສັ້ນທາງແຫຼ່ງວ່າງ, ໃຊ້ gateway ເປັນຕົວກໍານົດການທີ່ຢູ່ແລະ
ກໍານົດເສັ້ນທາງແຫຼ່ງວ່າງໂດຍໃຊ້ຕົວເລືອກ ip-options=x8307040a000001 .
ຕົວເລືອກ IP ຖືກກໍານົດໄວ້ໃນ RFC 791.

mtudiscover=<0|1|2>
ເອົາ 0, 1, 2 ເພື່ອບໍ່ເຄີຍ, ຕ້ອງການ, ຫຼືໃຊ້ເສັ້ນທາງ MTU ຄົ້ນພົບຢູ່ໃນເຕົ້າຮັບນີ້ສະເໝີ.

ip-pktinfo
ຕັ້ງຕົວເລືອກຊັອກເກັດ IP_PKTINFO. ອັນນີ້ເຮັດໃຫ້ການຮັບ ແລະບັນທຶກຂໍ້ມູນສຳຮອງ
ຂໍ້ຄວາມທີ່ມີທີ່ຢູ່ປາຍທາງ ແລະສ່ວນຕິດຕໍ່ (Linux) (ຕົວຢ່າງ).

ip-recverr
ຕັ້ງຕົວເລືອກຊັອກເກັດ IP_RECVERR. ອັນນີ້ເຮັດໃຫ້ການຮັບ ແລະບັນທຶກຂໍ້ມູນສຳຮອງ
ຂໍ້​ຄວາມ​ທີ່​ມີ​ຂໍ້​ມູນ​ຄວາມ​ຜິດ​ພາດ​ລະ​ອຽດ​.

ip-recvopts
ຕັ້ງຕົວເລືອກຊັອກເກັດ IP_RECVOPTS. ນີ້ເຮັດໃຫ້ການຮັບແລະບັນທຶກ IP
ທາງເລືອກຂໍ້ຄວາມເສີມ (Linux, *BSD).

ip-recvtos
ຕັ້ງຕົວເລືອກຊັອກເກັດ IP_RECVTOS. ອັນນີ້ເຮັດໃຫ້ການຮັບ ແລະບັນທຶກ TOS (ປະເພດ
ການບໍລິການ) ຂໍ້ຄວາມເສີມ (Linux).

ip-recvttl
ຕັ້ງຕົວເລືອກຊັອກເກັດ IP_RECVTTL. ນີ້ເຮັດໃຫ້ການຮັບແລະບັນທຶກ TTL (ເວລາ
to live) ຂໍ້ຄວາມເສີມ (Linux, *BSD).

ip-recvdstaddr
ຕັ້ງຕົວເລືອກຊັອກເກັດ IP_RECVDSTADDR. ນີ້ເຮັດໃຫ້ການຮັບແລະບັນທຶກຂອງ
ຂໍ້ຄວາມເສີມທີ່ມີທີ່ຢູ່ປາຍທາງ (*BSD) (ຕົວຢ່າງ).

ip-recvif
ຕັ້ງຕົວເລືອກຊັອກເກັດ IP_RECVIF. ນີ້ເຮັດໃຫ້ການຮັບແລະບັນທຶກຂອງການໂຕ້ຕອບ
ຂໍ້ຄວາມເສີມ (*BSD) (ຕົວຢ່າງ).

ip-add-membership=

ip-add-membership=

ip-add-membership=

ip-add-membership=

ip-add-membership=
ເຮັດໃຫ້ socket ເປັນສະມາຊິກຂອງກຸ່ມ multicast ທີ່ລະບຸ. ນີ້ແມ່ນພຽງແຕ່ໃນປັດຈຸບັນ
ປະຕິບັດສໍາລັບ IPv4. ທາງເລືອກໃຊ້ເວລາທີ່ຢູ່ IP ຂອງກຸ່ມ multicast ແລະ
ຂໍ້ມູນກ່ຽວກັບການໂຕ້ຕອບເຄືອຂ່າຍທີ່ຕ້ອງການ. syntax ທົ່ວໄປທີ່ສຸດແມ່ນອັນທໍາອິດ,
ໃນຂະນະທີ່ເຄື່ອງອື່ນໆມີພຽງແຕ່ຢູ່ໃນລະບົບທີ່ສະຫນອງໂຄງສ້າງ mreqn (Linux).
ຕົວຊີ້ວັດຂອງການໂຕ້ຕອບເຄືອຂ່າຍທີ່ຫ້າວຫັນສາມາດສະແດງໄດ້ໂດຍໃຊ້ປະໂຫຍດ ໂປຣແຄນ.

ip-multicast-if=
ລະບຸຊື່ໂຮສ ຫຼືທີ່ຢູ່ຂອງອິນເຕີເຟດເຄືອຂ່າຍທີ່ຈະໃຊ້ສໍາລັບ multicast
ການຈາລະຈອນ.

ip-multicast-loop=
ລະບຸວ່າທຣາບຟິກ multicast ຂາອອກຄວນກັບຄືນໄປຫາສ່ວນຕິດຕໍ່.

ip-multicast-ttl=
ກໍານົດ TTL ທີ່ໃຊ້ສໍາລັບການຈາລະຈອນ multicast ຂາອອກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1.

ແກ້ບັນຫາຄືນໃໝ່

res-aonly

res-usevc

ປະຖົມ

re-igntc

ເກີດຂຶ້ນຊ້ຳ

re-defnames

ພັກເຊົາຄືນ

res-dnsrch
ທາງ​ເລືອກ​ເຫຼົ່າ​ນີ້​ກໍາ​ນົດ​ຕົວ​ແກ້​ໄຂ​ທີ່​ສອດ​ຄ້ອງ​ກັນ (ການ​ແກ້​ໄຂ​ຊື່​) ທຸງ​ທາງ​ເລືອກ​.
ຕື່ມໃສ່ "=0" ເພື່ອລຶບລ້າງທາງເລືອກເລີ່ມຕົ້ນ. ເບິ່ງ man solver\(5) ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບ
ທາງເລືອກເຫຼົ່ານີ້. ໝາຍເຫດ: ຕົວເລືອກເຫຼົ່ານີ້ແມ່ນໃຊ້ໄດ້ກັບທີ່ຢູ່ທີ່ເຂົາເຈົ້ານຳໃຊ້ເທົ່ານັ້ນ
to

IP6 ທາງເລືອກ ກຸ່ມ

ຕົວເລືອກເຫຼົ່ານີ້ສາມາດໃຊ້ໄດ້ໃນຊັອກເກັດທີ່ອີງໃສ່ IPv6 ເທົ່ານັ້ນ. ເບິ່ງທາງເລືອກ IP ສໍາລັບທາງເລືອກທີ່ສາມາດເຮັດໄດ້
ນຳໃຊ້ກັບທັງຊັອກເກັດ IPv4 ແລະ IPv6.

ipv6only=
ຕັ້ງຕົວເລືອກຊັອກເກັດ IPV6_V6ONLY. ຖ້າ 0, TCP stack ຈະຍອມຮັບ
ການເຊື່ອມຕໍ່ໂດຍໃຊ້ IPv4 protocol ໃນພອດດຽວກັນ. ຄ່າເລີ່ມຕົ້ນແມ່ນຂຶ້ນກັບລະບົບ.

ipv6-recvdstopts
ຕັ້ງຕົວເລືອກຊັອກເກັດ IPV6_RECVDSTOPTS. ນີ້ເຮັດໃຫ້ການຮັບແລະບັນທຶກຂອງ
ຂໍ້ຄວາມເສີມທີ່ມີຕົວເລືອກປາຍທາງ.

ipv6-recvhoplimit
ຕັ້ງຕົວເລືອກຊັອກເກັດ IPV6_RECVHOPLIMIT. ນີ້ເຮັດໃຫ້ການຮັບແລະບັນທຶກຂອງ
ຂໍ້ຄວາມເສີມທີ່ປະກອບດ້ວຍ hoplimit.

ipv6-recvhopopts
ຕັ້ງຕົວເລືອກຊັອກເກັດ IPV6_RECVHOPOPTS. ນີ້ເຮັດໃຫ້ການຮັບແລະບັນທຶກຂອງ
ຂໍ້ຄວາມເສີມທີ່ປະກອບດ້ວຍຕົວເລືອກ hop.

ipv6-recvpktinfo
ຕັ້ງຕົວເລືອກຊັອກເກັດ IPV6_RECVPKTINFO. ນີ້ເຮັດໃຫ້ການຮັບແລະບັນທຶກຂອງ
ຂໍ້ຄວາມເສີມທີ່ມີທີ່ຢູ່ປາຍທາງ ແລະການໂຕ້ຕອບ.

ipv6-unicast-hops=link(TYPE_INT)( )
ຕັ້ງຕົວເລືອກຊັອກເກັດ IPV6_UNICAST_HOPS. ນີ້ກໍານົດຂອບເຂດຈໍາກັດການນັບ hop (TTL) ສໍາລັບ
ແພັກເກັດ unicast ຂາອອກ.

ipv6-recvrthdr
ຕັ້ງຄ່າຕົວເລືອກຊັອກເກັດ IPV6_RECVRTHDR. ນີ້ເຮັດໃຫ້ການຮັບແລະບັນທຶກຂອງ
ຂໍ້ຄວາມເສີມທີ່ປະກອບດ້ວຍຂໍ້ມູນເສັ້ນທາງ.

ipv6-tclass
ຕັ້ງຕົວເລືອກຊັອກເກັດ IPV6_TCLASS. ນີ້ກໍານົດຊັ້ນໂອນຂອງຂາອອກ
ຊອງ.

ipv6-recvtclass
ຕັ້ງຕົວເລືອກຊັອກເກັດ IPV6_RECVTCLASS. ນີ້ເຮັດໃຫ້ການຮັບແລະບັນທຶກຂອງ
ຂໍ້ຄວາມເສີມທີ່ປະກອບດ້ວຍຊັ້ນໂອນ.

TCP ທາງເລືອກ ກຸ່ມ

ທາງເລືອກເຫຼົ່ານີ້ອາດຈະຖືກນໍາໃຊ້ກັບເຕົ້າຮັບ TCP. ພວກເຂົາເຈົ້າເຮັດວຽກໂດຍການເອີ້ນ setsockopt() ກັບ
ຕົວກໍານົດການທີ່ເຫມາະສົມ.

ຄອກ ບໍ່ໄດ້ສົ່ງແພັກເກັດທີ່ນ້ອຍກວ່າ MSS (ຂະຫນາດສ່ວນສູງສຸດ).

ເລື່ອນການຍອມຮັບ
ໃນຂະນະທີ່ຟັງ, ຍອມຮັບການເຊື່ອມຕໍ່ພຽງແຕ່ເມື່ອຂໍ້ມູນຈາກເພື່ອນມິດມາຮອດ.

keepcnt=
ກໍາ​ນົດ​ຈໍາ​ນວນ​ຂອງ​ການ​ເກັບ​ຮັກ​ສາ​ໄວ້​ກ່ອນ​ທີ່​ຈະ​ປິດ​ເຕົ້າ​ຮັບ​ເພື່ອ​ [int].

Keepidle=
ກໍານົດເວລາຫວ່າງກ່ອນທີ່ຈະສົ່ງ Keepalive ທໍາອິດໄປຫາ [int].

keepintvl=
ກໍານົດໄລຍະຫ່າງລະຫວ່າງສອງ Keepalive ເປັນ [int].

linger2=
ຕັ້ງເວລາເພື່ອຮັກສາເຕົ້າຮັບຢູ່ໃນສະຖານະ FIN-WAIT-2 [int].

mss=
ກໍານົດ MSS (ຂະຫນາດສ່ວນສູງສຸດ) ຫຼັງຈາກ socket() ໂທຫາ [int]. ນີ້
ຫຼັງຈາກນັ້ນ, ຄ່າຈະຖືກສະເໜີໃຫ້ຄູ່ຮ່ວມກັບຊຸດ SYN ຫຼື SYN/ACK (ຕົວຢ່າງ).

mss-late=
ກໍານົດ MSS ຂອງເຕົ້າຮັບຫຼັງຈາກການເຊື່ອມຕໍ່ໄດ້ຖືກສ້າງຕັ້ງຂຶ້ນເພື່ອ [int].

nodelay
ປິດລະບົບ Nagle algorithm ສໍາລັບການວັດແທກ RTT (ເວລາໄປກັບ).

rfc1323
ເປີດໃຊ້ຕົວເລືອກ RFC1323 TCP: ຂະໜາດໜ້າຕ່າງ TCP, ການວັດແທກເວລາໄປກັບ (RTTM),
ແລະປ້ອງກັນຕົວເລກລໍາດັບທີ່ຫໍ່ (PAWS) (AIX).

stdurg ເປີດໃຊ້ RFC1122 ການຈັດການກັບຕົວຊີ້ດ່ວນ (AIX).

syncnt=
ກໍານົດຈໍານວນສູງສຸດຂອງ SYN retransmits ໃນລະຫວ່າງການເຊື່ອມຕໍ່ກັບ [int].

md5sig ເປີດໃຊ້ການຜະລິດການຍ່ອຍ MD5 ໃນແພັກເກັດ (FreeBSD).

ໂນປ ປິດການນຳໃຊ້ຕົວເລືອກ TCP (FreeBSD, MacOSX).

nopush ກໍານົດທາງເລືອກເຕົ້າຮັບ TCP_NOPUSH (FreeBSD, MacOSX).

sack-ປິດການໃຊ້ງານ
ປິດການນຳໃຊ້ຄຸນສົມບັດການຮັບຮູ້ທີ່ເລືອກ (OpenBSD).

ລາຍເຊັນ-ເປີດໃຊ້ງານ
ເປີດໃຊ້ການຜະລິດການຍ່ອຍ MD5 ໃນແພັກເກັດ (OpenBSD).

abort-threshold=
ກຳນົດເວລາລໍຖ້າຄຳຕອບຂອງໝູ່ເພື່ອນໃນການເຊື່ອມຕໍ່ທີ່ຕັ້ງໄວ້
(HP-UX).

conn-abort-threshold=
ກໍານົດເວລາລໍຖ້າຄໍາຕອບຂອງເຄື່ອງແມ່ຂ່າຍໃນລະຫວ່າງການເຊື່ອມຕໍ່ເບື້ອງຕົ້ນ
(HP-UX).

ຮັກສາໄວ້
ຕັ້ງເວລາລໍຖ້າຄຳຕອບຂອງເຊີບເວີໃນລະຫວ່າງການເຊື່ອມຕໍ່\() ກ່ອນທີ່ຈະໃຫ້
ຂຶ້ນ. ຄ່າໃນເຄິ່ງວິນາທີ, ຄ່າເລີ່ມຕົ້ນແມ່ນ 150 (75s) (Tru64).

paws ເປີດໃຊ້ຄຸນສົມບັດ "ປ້ອງກັນຕົວເລກລໍາດັບທີ່ຫໍ່ໄວ້" (Tru64).

sackena
ເປີດໃຊ້ການຮັບຮູ້ແບບເລືອກ (Tru64).

tsoptena
ເປີດໃຊ້ຕົວເລືອກການປະທັບຕາເວລາທີ່ອະນຸຍາດໃຫ້ການຄິດໄລ່ RTT ຄືນໃໝ່ໃນການເຊື່ອມຕໍ່ທີ່ມີຢູ່ແລ້ວ
(Tr64).

ສປປລາວ ທາງເລືອກ ກຸ່ມ

ທາງເລືອກເຫຼົ່ານີ້ອາດຈະຖືກນໍາໃຊ້ກັບເຕົ້າຮັບການຖ່າຍທອດ SCTP.

sctp-nodelay
ຕັ້ງຄ່າຕົວເລືອກຊັອກເກັດ SCTP_NODELAY ທີ່ປິດການໃຊ້ງານລະບົບ Nagle.

sctp-maxseg=
ຕັ້ງຕົວເລືອກຊັອກເກັດ SCTP_MAXSEG ເປັນ [int]. ມູນຄ່ານີ້ໄດ້ຖືກສະເຫນີຫຼັງຈາກນັ້ນ
ຕໍ່ກັບຄູ່ຮ່ວມກັບຊຸດ SYN ຫຼື SYN/ACK.

UDP, ທ. TCP, ແລະ ສປປລາວ ທາງເລືອກ ກຸ່ມ

ໃນທີ່ນີ້ພວກເຮົາຊອກຫາທາງເລືອກທີ່ກ່ຽວຂ້ອງກັບກົນໄກການພອດເຄືອຂ່າຍແລະດັ່ງນັ້ນຈຶ່ງສາມາດນໍາໃຊ້ໄດ້
ກັບ UDP, TCP, ແລະ SCTP client ແລະທີ່ຢູ່ເຊີບເວີ.

sourceport=
ສໍາລັບການເຊື່ອມຕໍ່ຂາອອກ (ລູກຄ້າ) TCP ແລະ UDP, ມັນກໍານົດແຫຼ່ງ ການ​ນໍາ​ໃຊ້​
extra bind() ໂທ. ດ້ວຍ TCP ຫຼື UDP ຟັງທີ່ຢູ່, socat ປິດທັນທີ
ການເຊື່ອມຕໍ່ຖ້າລູກຄ້າບໍ່ໄດ້ໃຊ້ແຫຼ່ງທີ່ມານີ້ (ຕົວຢ່າງ).

lowport
ການເຊື່ອມຕໍ່ຂາອອກ (ລູກຄ້າ) TCP ແລະ UDP ກັບທາງເລືອກນີ້ໃຊ້ແບບສຸ່ມທີ່ບໍ່ໄດ້ໃຊ້
ພອດແຫຼ່ງລະຫວ່າງ 640 ແລະ 1023 incl. ໃນລະບົບປະຕິບັດການລະດັບ UNIX, ນີ້
ຮຽກຮ້ອງໃຫ້ມີສິດທິພິເສດຂອງຮາກ, ແລະດັ່ງນັ້ນຈຶ່ງຊີ້ໃຫ້ເຫັນວ່າຂະບວນການລູກຄ້າໄດ້ຮັບອະນຸຍາດ
ໂດຍຮາກທ້ອງຖິ່ນ. TCP ແລະ UDP ຟັງທີ່ຢູ່ກັບຕົວເລືອກນີ້ປິດທັນທີ
ການເຊື່ອມຕໍ່ຖ້າລູກຄ້າບໍ່ໄດ້ໃຊ້ແຫຼ່ງທີ່ມາ <= 1023. ກົນໄກນີ້ສາມາດ
ສະຫນອງການອະນຸຍາດຈໍາກັດພາຍໃຕ້ບາງສະຖານະການ.

ຖົງຕີນ ທາງເລືອກ ກຸ່ມ

ເມື່ອໃຊ້ທີ່ຢູ່ປະເພດ SOCKS, ບາງທາງເລືອກສະເພາະຂອງຖົງຕີນສາມາດຖືກກໍານົດ.

socksport= ບໍລິການ>
ຍົກເລີກການບໍລິການ "ຖົງຕີນ" ເລີ່ມຕົ້ນ ຫຼືພອດ 1080 ສໍາລັບພອດເຊີບເວີຂອງຖົງຕີນກັບ
.

socksuer=
ສົ່ງ [string] ໃນຊ່ອງຊື່ຜູ້ໃຊ້ໄປຫາເຊີບເວີຂອງຖົງຕີນ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
ຊື່ຜູ້ໃຊ້ຕົວຈິງ ($LOGNAME ຫຼື $USER) (ຕົວຢ່າງ).

HTTP ທາງເລືອກ ກຸ່ມ

ທາງເລືອກທີ່ສາມາດສະຫນອງໃຫ້ກັບທີ່ຢູ່ປະເພດ HTTP. ທີ່ຢູ່ HTTP ດຽວໃນປັດຈຸບັນ
ປະຕິບັດແມ່ນ proxy-connect.

proxyport= ບໍລິການ>
ລົບລ້າງພອດພຣັອກຊີ HTTP ເລີ່ມຕົ້ນ 8080 ດ້ວຍ .

ບໍ່ສົນໃຈ
ໂປຣໂຕຄໍ HTTP ຕ້ອງການໃຊ້ CR+NL ເປັນຜູ້ສິ້ນສຸດສາຍ. ເມື່ອເຄື່ອງແມ່ຂ່າຍຕົວແທນ
ລະເມີດມາດຕະຖານນີ້, socat ອາດຈະບໍ່ເຂົ້າໃຈຄໍາຕອບຂອງມັນ. ທາງ​ເລືອກ​ນີ້​ຊີ້​ນໍາ​
socat ເພື່ອຕີຄວາມໝາຍ NL ເປັນຕົວສິ້ນສຸດຂອງແຖວ ແລະບໍ່ສົນໃຈ CR ໃນຄໍາຕອບ.
ຢ່າງໃດກໍຕາມ, socat ສົ່ງ CR+NL ໄປຫາຕົວແທນ.

proxyauth= :
ສະໜອງການພິສູດຢືນຢັນ "ພື້ນຖານ" ໃຫ້ກັບເຊີບເວີພຣັອກຊີ. ການໂຕ້ຖຽງກັບທາງເລືອກແມ່ນ
ໃຊ້ກັບສ່ວນຫົວ "Proxy-Authorization: Base" ໃນຮູບແບບທີ່ເຂົ້າລະຫັດ base64.
ຫມາຍເຫດ: ຊື່ຜູ້ໃຊ້ແລະລະຫັດຜ່ານແມ່ນເຫັນໄດ້ສໍາລັບຜູ້ໃຊ້ທຸກຄົນໃນເຄື່ອງທ້ອງຖິ່ນໃນ
ບັນຊີລາຍຊື່ຂະບວນການ; ຊື່​ຜູ້​ໃຊ້​ແລະ​ລະ​ຫັດ​ຜ່ານ​ແມ່ນ​ໄດ້​ຮັບ​ການ​ຍົກ​ຍ້າຍ​ກັບ​ເຊີບ​ເວີ​ຕົວ​ແທນ​ທີ່​ບໍ່​ໄດ້​ເຂົ້າ​ລະ​ຫັດ​
(ເຂົ້າລະຫັດ base64) ແລະອາດຈະຖືກ sniffed.

ແກ້ໄຂ
ຕາມຄ່າເລີ່ມຕົ້ນ, socat ສົ່ງໄປຫາຕົວແທນການຮ້ອງຂໍ CONNECT ທີ່ມີເປົ້າໝາຍ
ຊື່ເຈົ້າພາບ. ດ້ວຍຕົວເລືອກນີ້, socat ແກ້ໄຂ hostname ຢູ່ໃນທ້ອງຖິ່ນແລະສົ່ງ IP
ທີ່ຢູ່. ກະລຸນາສັງເກດວ່າ, ອີງຕາມ RFC 2396, ການແກ້ໄຂຊື່ພຽງແຕ່ IPv4
ທີ່ຢູ່ຖືກປະຕິບັດ.

ຫາຍາກ ທາງເລືອກ ກຸ່ມ

ທາງເລືອກເຫຼົ່ານີ້ກວດເບິ່ງວ່າລູກຄ້າເຊື່ອມຕໍ່ຄວນຈະໄດ້ຮັບການອະນຸຍາດເຂົ້າເຖິງຫຼືບໍ່. ພວກເຂົາສາມາດຖືກນໍາໃຊ້
ການຟັງ ແລະຮັບຊັອກເກັດເຄືອຂ່າຍ. ຕົວເລືອກ tcp-wrappers ຕົກຢູ່ໃນກຸ່ມນີ້.

ຊ່ວງ=
ຫຼັງຈາກຍອມຮັບການເຊື່ອມຕໍ່, ທົດສອບວ່າເພື່ອນມິດຢູ່ພາຍໃນ ລະດັບ. ສໍາລັບ IPv4
ທີ່ຢູ່, ໄລຍະທີ່ຢູ່ໃຊ້ແບບຟອມທີ່ຢູ່/ບິດ, ເຊັ່ນ: 10.0.0.0/8, ຫຼື
ທີ່ຢູ່:ໜ້າກາກ, ຕົວຢ່າງ 10.0.0.0:255.0.0.0 (ຕົວຢ່າງ); ສໍາລັບ IPv6, ມັນແມ່ນ
[ip6-address/bits], ຕົວຢ່າງ [::1/128]. ຖ້າທີ່ຢູ່ລູກຄ້າບໍ່ກົງກັນ, socat
ອອກຄຳເຕືອນ ແລະສືບຕໍ່ຟັງ/ຮັບ.

tcpwrap[= ]
ໃຊ້ຫ້ອງສະຫມຸດ libwrap (tcpd) ຂອງ Wietse Venema ເພື່ອກໍານົດວ່າລູກຄ້າໄດ້ຮັບອະນຸຍາດ
ເພື່ອເຊື່ອມຕໍ່. ໄຟລ໌ການຕັ້ງຄ່າແມ່ນ /etc/hosts.allow ແລະ /etc/hosts.deny ຕໍ່
ຄ່າເລີ່ມຕົ້ນ, ເບິ່ງ "man 5 hosts_access" ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມ. ທາງເລືອກ (ປະເພດ
string) ຖືກສົ່ງກັບຟັງຊັນ wrapper ເປັນຊື່ຂະບວນການ daemon (ຕົວຢ່າງ). ຖ້າ
ຍົກເວັ້ນ, ຊື່ພື້ນຖານຂອງການຮຽກຮ້ອງ socats (argv[0]) ແມ່ນຜ່ານ. ຖ້າທັງສອງ tcpwrap
ແລະທາງເລືອກໄລຍະແມ່ນຖືກນໍາໃຊ້ກັບທີ່ຢູ່, ເງື່ອນໄຂທັງສອງຕ້ອງໄດ້ຮັບການປະຕິບັດ
ອະນຸຍາດໃຫ້ເຊື່ອມຕໍ່.

allow-table=
ເອົາໄຟລ໌ທີ່ລະບຸໄວ້ແທນ /etc/hosts.allow.

deny-table=
ເອົາໄຟລ໌ທີ່ລະບຸໄວ້ແທນ /etc/hosts.deny.

tcpwrap-etc=
ຊອກຫາ hosts.allow ແລະ hosts.deny ໃນໄດເລກະທໍລີທີ່ລະບຸ. ແມ່ນ overridden ໂດຍ
ທາງເລືອກ hosts-allow ແລະ hosts-deny.

LISTEN ທາງເລືອກ ກຸ່ມ

ຕົວເລືອກສະເພາະກັບເຕົ້າຮັບຟັງ.

backlog=
ກໍານົດຄ່າ backlog ທີ່ສົ່ງກັບລະບົບ listen() ໂທຫາ [int].
ຄ່າເລີ່ມຕົ້ນແມ່ນ 5.

ສູງສຸດ-ເດັກນ້ອຍ=
ຈໍາກັດຈໍານວນຂອງຂະບວນການເດັກນ້ອຍພ້ອມກັນ [int]. ຄ່າເລີ່ມຕົ້ນແມ່ນບໍ່ມີຂອບເຂດຈໍາກັດ.

ເດັກນ້ອຍ ທາງເລືອກ ກຸ່ມ

ທາງເລືອກສໍາລັບທີ່ຢູ່ທີ່ມີການເຊື່ອມຕໍ່ຫຼາຍໂດຍຜ່ານຂະບວນການເດັກນ້ອຍ.

fork ຫຼັງຈາກການສ້າງການເຊື່ອມຕໍ່, ຈັດການຊ່ອງທາງຂອງມັນຢູ່ໃນຂະບວນການເດັກນ້ອຍແລະຮັກສາໄວ້
ຂະບວນການຂອງພໍ່ແມ່ພະຍາຍາມຜະລິດການເຊື່ອມຕໍ່ຫຼາຍ, ບໍ່ວ່າຈະໂດຍການຟັງຫຼື
ໂດຍການເຊື່ອມຕໍ່ໃນ loop (ຕົວຢ່າງ).
OPENSSL-CONNECT ແລະ OPENSSL-LISTEN ມີຄວາມແຕກຕ່າງກັນໃນເມື່ອພວກມັນແຍກລູກອອກ:

ສ້ອມ OPENSSL-LISTEN ກ່ອນທີ່ຈະ ການຈັບມື SSL, ໃນຂະນະທີ່ OPENSSLSSL-CONNECT fork
ຫລັງຈາກນັ້ນ. ທາງເລືອກ RETRY ແລະ FOREVER ບໍ່ໄດ້ຖືກສືບທອດໂດຍຂະບວນການເດັກ.
ໃນບາງລະບົບປະຕິບັດການ (ເຊັ່ນ FreeBSD) ຕົວເລືອກນີ້ໃຊ້ບໍ່ໄດ້ສໍາລັບ UDP-LISTEN
ທີ່ຢູ່.

EXEC ທາງເລືອກ ກຸ່ມ

ທາງເລືອກສໍາລັບທີ່ຢູ່ທີ່ເອີ້ນໂຄງການ.

ເສັ້ນທາງ=
ແທນທີ່ຕົວແປສະພາບແວດລ້ອມ PATH ສໍາລັບການຊອກຫາໂປຣແກຣມດ້ວຍ .
ຄ່າ $PATH ນີ້​ແມ່ນ​ມີ​ຜົນ​ໃນ​ຂະ​ບວນ​ການ​ຂອງ​ເດັກ​ເຊັ່ນ​ດຽວ​ກັນ.

ເຂົ້າ​ສູ່​ລະ​ບົບ ຄໍານໍາຫນ້າ argv[0] ສໍາລັບ execvp() ໂທຫາດ້ວຍ '-', ດັ່ງນັ້ນຈຶ່ງເຮັດໃຫ້ shell ປະຕິບັດຕົວເປັນ
ເຂົ້າ​ສູ່​ລະ​ບົບ shell.

FORK ທາງເລືອກ ກຸ່ມ

ທີ່ຢູ່ EXEC ຫຼື SYSTEM ເອີ້ນໂຄງການໂດຍໃຊ້ຂະບວນການເດັກນ້ອຍແລະການໂອນຂໍ້ມູນລະຫວ່າງ
socat ແລະໂຄງການ. ກົນໄກການສື່ສານ interprocess ສາມາດໄດ້ຮັບອິດທິພົນກັບ
ທາງ​ເລືອກ​ດັ່ງ​ຕໍ່​ໄປ​ນີ້​. ຕາມຄ່າເລີ່ມຕົ້ນ, socketpair() ຖືກສ້າງ ແລະມອບໝາຍໃຫ້ stdin ແລະ stdout
ຂອງຂະບວນການເດັກ, ໃນຂະນະທີ່ stderr ແມ່ນສືບທອດມາຈາກ socat ຂະບວນການ, ແລະເດັກນ້ອຍ
ຂະບວນການໃຊ້ຕົວອະທິບາຍໄຟລ໌ 0 ແລະ 1 ສໍາລັບການສື່ສານກັບຂະບວນການ socat ຕົ້ນຕໍ.

ໂນຟອກ ບໍ່ໄດ້ຕັດຂະບວນການຍ່ອຍສໍາລັບການປະຕິບັດໂຄງການ, ແທນທີ່ຈະໂທຫາ execvp\() ຫຼື.
ລະບົບ\() ໂດຍກົງຈາກຕົວຢ່າງ socat ຕົວຈິງ. ນີ້ຫຼີກເວັ້ນການ overhead ຂອງ
ຂະບວນການອື່ນລະຫວ່າງໂຄງການແລະເພື່ອນມິດຂອງຕົນ, ແຕ່ແນະນໍາຫຼາຍ
ຂໍ້​ຈໍາ​ກັດ​:

o ທາງເລືອກນີ້ສາມາດຖືກນໍາໃຊ້ກັບຄັ້ງທີສອງເທົ່ານັ້ນ socat ທີ່ຢູ່.

o ມັນບໍ່ສາມາດຖືກນໍາໃຊ້ກັບສ່ວນຫນຶ່ງຂອງທີ່ຢູ່ຄູ່.

o ທີ່ຢູ່ socat ທໍາອິດບໍ່ສາມາດເປັນ OPENSSL ຫຼື READLINE

o socat ທາງເລືອກ -b, -t, -D, -l, -v, -x ກາຍເປັນປະໂຫຍດ

o ສໍາລັບທັງສອງທີ່ຢູ່, ທາງເລືອກທີ່ລະເວັ້ນ, cr, ແລະ crnl ກາຍເປັນບໍ່ມີປະໂຫຍດ

o ສໍາລັບທີ່ຢູ່ທີສອງ (ຫນຶ່ງທີ່ມີທາງເລືອກ nofork), ຕົວເລືອກເພີ່ມເຕີມ, cloexec,
flock, ຜູ້ໃຊ້, ກຸ່ມ, ຮູບແບບ, nonblock, perm-late, setlk, ແລະ setpgid ບໍ່ສາມາດເປັນ
ນຳໃຊ້. ບາງສ່ວນຂອງເຫຼົ່ານີ້ສາມາດຖືກນໍາໃຊ້ໃນທີ່ຢູ່ທໍາອິດ.

ທໍ່ ສ້າງຄູ່ຂອງທໍ່ທີ່ບໍ່ມີຊື່ສໍາລັບການສື່ສານ interprocess ແທນທີ່ຈະເປັນເຕົ້າຮັບ
ຄູ່.

openpty
ສ້າງການສື່ສານກັບຂະບວນການຍ່ອຍໂດຍໃຊ້ pseudo terminal ສ້າງດ້ວຍ
openpty() ແທນຄ່າເລີ່ມຕົ້ນ (socketpair ຫຼື ptmx).

ptmx ສ້າງການສື່ສານກັບຂະບວນການຍ່ອຍໂດຍໃຊ້ pseudo terminal ສ້າງໂດຍ
ເປີດ /dev/ptmx or /dev/ptc ແທນຄ່າເລີ່ມຕົ້ນ (socketpair).

pty ສ້າງການສື່ສານກັບຂະບວນການຍ່ອຍໂດຍໃຊ້ pseudo terminal ແທນ a
ຄູ່ເຕົ້າຮັບ. ສ້າງ pty ດ້ວຍກົນໄກທີ່ມີຢູ່. ຖ້າ openpty ແລະ ptmx ແມ່ນ
ທັງສອງສາມາດໃຊ້ໄດ້, ມັນໃຊ້ ptmx ເພາະວ່ານີ້ແມ່ນສອດຄ່ອງກັບ POSIX (ຕົວຢ່າງ).

ctty ເຮັດໃຫ້ pty ເປັນ tty ຄວບຄຸມຂອງຂະບວນການຍ່ອຍ (ຕົວຢ່າງ).

stderr ຊີ້ stderr ຂອງຂະບວນການຍ່ອຍໄປຫາຊ່ອງທາງຜົນຜະລິດຂອງມັນໂດຍການເຮັດໃຫ້ stderr ເປັນ dup() ຂອງ.
stdout (ຕົວຢ່າງ).

fdin=
ກຳນົດຊ່ອງທາງການປ້ອນຂໍ້ມູນຂະບວນການຍ່ອຍໃຫ້ກັບຕົວອະທິບາຍໄຟລ໌ຂອງມັນ ແທນ​ທີ່
stdin (0). ໂຄງການເລີ່ມຕົ້ນຈາກຂະບວນການຍ່ອຍຕ້ອງໃຊ້ fd ນີ້ສໍາລັບການອ່ານ
ຂໍ້ມູນຈາກ socat (ຕົວຢ່າງ).

fdout=
ກໍານົດຊ່ອງທາງຜົນຜະລິດຂະບວນການຍ່ອຍໃຫ້ກັບຕົວອະທິບາຍໄຟລ໌ຂອງມັນ ແທນ​ທີ່
stdout (1). ໂຄງການເລີ່ມຕົ້ນຈາກຂະບວນການຍ່ອຍຕ້ອງໃຊ້ fd ນີ້ສໍາລັບການຂຽນ
ຂໍ້ມູນເຖິງ socat (ຕົວຢ່າງ).

ຖອນຫາຍໃຈ, ເຄື່ອງໝາຍ, sigquit
ມີ socat ຜ່ານສັນຍານປະເພດນີ້ໄປຫາຂະບວນການຍ່ອຍ. ຖ້າບໍ່ມີທີ່ຢູ່ນີ້
ທາງເລືອກ, socat ສິ້ນສຸດກ່ຽວກັບສັນຍານເຫຼົ່ານີ້.

TERMIOS ທາງເລືອກ ກຸ່ມ

ສໍາລັບທີ່ຢູ່ທີ່ເຮັດວຽກຢູ່ໃນ tty (ເຊັ່ນ: stdio, file:/dev/tty, exec:...,pty), terminal
ພາລາມິເຕີທີ່ກໍານົດຢູ່ໃນກົນໄກຂອງ UN*X termios ແມ່ນມີຢູ່ໃນທາງເລືອກທີ່ຢູ່
ຕົວກໍານົດການ. ກະລຸນາຮັບຊາບວ່າການປ່ຽນແປງຂອງຕົວກໍານົດການຂອງສະຖານີໂຕ້ຕອບຂອງທ່ານ
ຍັງ​ມີ​ປະ​ສິດ​ທິ​ຜົນ​ຫຼັງ​ຈາກ​ນັ້ນ​ socatການຢຸດເຊົາ, ດັ່ງນັ້ນທ່ານອາດຈະຕ້ອງໃສ່ "reset" ຫຼື "stty
sane" ໃນ shell ຂອງທ່ານຫຼັງຈາກນັ້ນ. ສໍາລັບທີ່ຢູ່ EXEC ແລະ SYSTEM ທີ່ມີທາງເລືອກ PTY, ເຫຼົ່ານີ້.
ທາງເລືອກໃນການໃຊ້ກັບ pty ໂດຍຂະບວນການຂອງເດັກ.

b0 ຕັດການເຊື່ອມຕໍ່ຢູ່ປາຍຍອດ.

b19200 ກໍານົດຄວາມໄວເສັ້ນ serial ເປັນ 19200 baud. ບາງອັດຕາອື່ນແມ່ນເປັນໄປໄດ້; ໃຊ້
ບາງສິ່ງບາງຢ່າງເຊັ່ນ: socat -hh |grep ' b[1-9]' ເພື່ອຊອກຫາຄວາມໄວທັງຫມົດທີ່ສະຫນັບສະຫນູນໂດຍຂອງທ່ານ.
ການຈັດຕັ້ງປະຕິບັດ.
ຫມາຍເຫດ: ໃນບາງລະບົບປະຕິບັດການ, ທາງເລືອກເຫຼົ່ານີ້ອາດຈະບໍ່ມີ. ໃຊ້ ispeed ຫຼື
ospeed ແທນ.

echo=
ເປີດໃຊ້ ຫຼືປິດສຽງດັງໃນທ້ອງຖິ່ນ.

icanon=
ຕັ້ງຄ່າ ຫຼືລຶບລ້າງໂໝດ canonical, ເປີດໃຊ້ສາຍ buffering ແລະບາງຕົວອັກສອນພິເສດ.

ວັດຖຸດິບ ຕັ້ງຄ່າໂຫມດດິບ, ດັ່ງນັ້ນການຖ່າຍທອດຂໍ້ມູນເຂົ້າແລະຜົນຜະລິດເກືອບບໍ່ໄດ້ປຸງແຕ່ງ. ທາງເລືອກນີ້ແມ່ນ
ລ້າສະໄຫມ, ໃຊ້ທາງເລືອກ rawer ຫຼື cfmakeraw ແທນ.

ວັດຖຸດິບ ເຮັດໃຫ້ terminal rawer ກວ່າທາງເລືອກດິບ. ຕົວເລືອກນີ້ປິດສຽງສະທ້ອນໂດຍຫຍໍ້.
(ຕົວຢ່າງ).

cfmakeraw
ຕັ້ງຄ່າໂໝດດິບໂດຍການເອີ້ນ cfmakeraw() ຫຼືໂດຍການຈຳລອງການໂທນີ້. ທາງເລືອກນີ້
implicitly ປິດສຽງດັງ.

ignbrk=
ບໍ່ສົນໃຈ ຫຼືແປຕົວອັກສອນ BREAK (ເຊັ່ນ: ^C)

brkint=

bs0

bs1

bsdly=<0|1>

clocal=

cr0
cr1
cr2
cr3

ກຳນົດຄວາມລ່າຊ້າໃນການກັບຄືນຂອງການຂົນສົ່ງເປັນ 0, 1, 2, ຫຼື 3, ຕາມລໍາດັບ. 0 ຫມາຍຄວາມວ່າບໍ່ມີການຊັກຊ້າ,
ຄ່າອື່ນໆແມ່ນຂຶ້ນກັບ terminal.

crdly=<0|1|2|3>

crread=

crtscts=

cs5
cs6
cs7
cs8

ກໍານົດຂະຫນາດຕົວອັກສອນເປັນ 5, 6, 7, ຫຼື 8 bits, ຕາມລໍາດັບ.

csize=<0|1|2|3>

cstopb=
ກໍານົດສອງບິດຢຸດ, ແທນທີ່ຈະເປັນຫນຶ່ງ.

dsusp=
ກຳນົດຄ່າສຳລັບຕົວລະຄອນ VDSUSP ທີ່ໂຈະພື້ນໜ້າປັດຈຸບັນ
ປະມວນຜົນ ແລະເປີດໃຊ້ shell ຄືນໃໝ່ (ທັງໝົດຍົກເວັ້ນ Linux).

echoctl=
Echos ຄວບຄຸມຕົວອັກສອນໃນນາມສະກຸນຂອງໝວກ (ເຊັ່ນ ^A)

echoe=

echok=

ສຽງດັງ=

echonl=

echoprt=

eof=

eol=

eol2=

ລົບ =

ຖິ້ມ=

ff0

ff1

ffdly=

flusho=

hupcl=

icrnl=

iexten=

igncr=

ignpar=

imaxbel=

inlcr=

inpck=

intr=

isig=

ispeed=
ກໍານົດອັດຕາ baud ສໍາລັບຂໍ້ມູນຂາເຂົ້າຢູ່ໃນເສັ້ນນີ້.
ເບິ່ງ: ospeed, b19200

istrip=

iuclc=

ixany=

ixoff=

ixon=

ຂ້າ =

ຕໍ່ໄປ =

ນາທີ=

nl0 ຕັ້ງຄ່າການຊັກຊ້າຂອງແຖວໃໝ່ເປັນ 0.

nl1

nldly=

noflsh=

ocrnl=

ofdel=

ofill=

olcuc=

onlcr=

onlret=

onocr=

ຄັດຄ້ານ=
ເປີດໃຊ້ຫຼືປິດການປຸງແຕ່ງຜົນຜະລິດ; ຕົວຢ່າງ: ປ່ຽນ NL ເປັນ CR-NL.

ຄວາມໄວ =
ກໍານົດອັດຕາ baud ສໍາລັບຂໍ້ມູນຂາອອກໃນເສັ້ນນີ້.
ເບິ່ງ: ispeed, b19200

parenb=
ເປີດໃຊ້ການສ້າງ parity ກ່ຽວກັບຜົນຜະລິດແລະການກວດສອບຄວາມສະເຫມີພາບສໍາລັບການປ້ອນຂໍ້ມູນ.

Parmrk=

parodd=

pendin=

quit =

ພິມໃໝ່=

sane ເອົາ terminal ກັບບາງສິ່ງບາງຢ່າງເຊັ່ນ: ສະຖານະເລີ່ມຕົ້ນທີ່ເປັນປະໂຫຍດ.

start=

ຢຸດ=

susp=

swtc=

tab0

tab1

tab2

tab3

tabdly=

ເວລາ=

tostop=

vt0

vt1

vtdly=

ລົບ =

xcase=

xtabs

i-pop-all
ດ້ວຍລະບົບ UNIX V STREAMS, ເອົາໄດເວີທັງໝົດອອກຈາກ stack.

i-push=
ດ້ວຍ UNIX System V STREAMS, ຍູ້ໄດເວີ (ໂມດູນ) ທີ່ມີຊື່ (ສາຍ)
ໃສ່ stack ໄດ້. ຕົວຢ່າງ, ເພື່ອໃຫ້ແນ່ໃຈວ່າອຸປະກອນລັກສະນະໃນ Solaris
ສະຫນັບສະຫນູນ termios ແລະອື່ນໆ, ໃຊ້ທາງເລືອກຕໍ່ໄປນີ້:
i-pop-all,i-push=ptem,i-push=ldterm,i-push=ttcompat

PTY ທາງເລືອກ ກຸ່ມ

ຕົວເລືອກເຫຼົ່ານີ້ແມ່ນມີຈຸດປະສົງເພື່ອໃຊ້ກັບປະເພດທີ່ຢູ່ pty.

link=
ສ້າງການເຊື່ອມຕໍ່ທີ່ເປັນສັນຍາລັກທີ່ຊີ້ໃຫ້ເຫັນເຖິງ pseudo terminal ຕົວຈິງ (pty). ນີ້
ອາດຈະຊ່ວຍແກ້ໄຂບັນຫາທີ່ ptys ຖືກສ້າງຂຶ້ນດ້ວຍຫຼາຍຫຼືຫນ້ອຍ
ຊື່ທີ່ບໍ່ສາມາດຄາດເດົາໄດ້, ເຮັດໃຫ້ມັນຍາກທີ່ຈະເຂົ້າເຖິງ socat ຜະລິດ pty ໂດຍກົງ
ອັດຕະໂນມັດ. ດ້ວຍຕົວເລືອກນີ້, ຜູ້ໃຊ້ສາມາດລະບຸຈຸດ "ແກ້ໄຂ" ໃນໄຟລ໌
ລໍາດັບຊັ້ນທີ່ຊ່ວຍໃຫ້ລາວເຂົ້າເຖິງ pty ຕົວຈິງ (ຕົວຢ່າງ). ເລີ່ມຕົ້ນດ້ວຍ socat
ຮຸ່ນ 1.4.3, ການເຊື່ອມຕໍ່ສັນຍາລັກຖືກໂຍກຍ້າຍອອກເມື່ອທີ່ຢູ່ຖືກປິດ (ແຕ່ເບິ່ງ
ທາງ​ເລືອກ unlink-close).

ລໍຄອຍ-ສໍາລອງ
ຂັດຂວາງໄລຍະເປີດຈົນກ່ວາຂະບວນການເປີດເບື້ອງສໍາລອງຂອງ pty. ປົກກະຕິແລ້ວ,
socat ສືບຕໍ່ຫຼັງຈາກສ້າງ pty ດ້ວຍການເປີດທີ່ຢູ່ຕໍ່ໄປຫຼືກັບ
ເຂົ້າໄປໃນ loop ການຍົກຍ້າຍ. ດ້ວຍຕົວເລືອກ wait-slave, socat ລໍຖ້າຈົນກ່ວາບາງຄົນ
ຂະບວນການເປີດເບື້ອງສໍາລອງຂອງ pty ກ່ອນທີ່ຈະສືບຕໍ່. ຕົວເລືອກນີ້ໃຊ້ໄດ້ເທົ່ານັ້ນ
ຖ້າລະບົບປະຕິບັດການສະຫນອງການໂທຫາລະບົບ poll(). ແລະມັນຂຶ້ນກັບ
ພຶດຕິກໍາ undocumented ຂອງ pty's, ສະນັ້ນມັນບໍ່ເຮັດວຽກຢູ່ໃນທຸກລະບົບປະຕິບັດການ. ມັນ
ໄດ້ຮັບການທົດສອບສົບຜົນສໍາເລັດໃນ Linux, FreeBSD, NetBSD, ແລະໃນ Tru64 ດ້ວຍ openpty.

pty-interval=
ເມື່ອຕັ້ງຕົວເລືອກ wait-slave, socat ກວດເບິ່ງສະພາບ HUP ເປັນໄລຍະ
ໃຊ້ poll() ເພື່ອຊອກຫາວ່າຝ່າຍສໍາລອງຂອງ pty ໄດ້ຖືກເປີດ. ການລົງຄະແນນສຽງເລີ່ມຕົ້ນ
ໄລຍະຫ່າງແມ່ນ 1ວິ. ໃຊ້ຕົວເລືອກ pty-interval [timeval] ເພື່ອປ່ຽນຄ່ານີ້.

OPENSSL ທາງເລືອກ ກຸ່ມ

ຕົວເລືອກເຫຼົ່ານີ້ນຳໃຊ້ກັບປະເພດທີ່ຢູ່ openssl ແລະ openssl-listen.

cipher=
ເລືອກລາຍຊື່ຕົວເຂົ້າລະຫັດທີ່ອາດຈະຖືກໃຊ້ສໍາລັບການເຊື່ອມຕໍ່. ເບິ່ງຫນ້າຜູ້ຊາຍ
ຂອງ ciphers, ພາກ CIPHER LIST ຮູບແບບ, ສໍາລັບລາຍລະອຽດກ່ຽວກັບ syntax,
ຄ່າ, ແລະຄ່າເລີ່ມຕົ້ນຂອງ .
ອາດມີສາຍລະຫັດລັບຫຼາຍອັນ, ແຍກອອກດ້ວຍ ':'. ບາງສາຍລະຫັດລັບທີ່ງ່າຍດາຍ:

3DES ໃຊ້ຊຸດລະຫັດລັບກັບ triple DES.

MD5 ໃຊ້ຊຸດລະຫັດລັບກັບ MD5.

aNULL ໃຊ້ຊຸດລະຫັດລັບໂດຍບໍ່ມີການພິສູດຢືນຢັນ.

NULL ບໍ່ໄດ້ໃຊ້ການເຂົ້າລະຫັດ.

HIGH ໃຊ້ຊຸດລະຫັດລັບທີ່ມີການເຂົ້າລະຫັດ "ສູງ". ໃຫ້ສັງເກດວ່າມິດສະຫາຍຕ້ອງສະຫນັບສະຫນູນ
ຊັບສິນທີ່ເລືອກ, ຫຼືການເຈລະຈາຈະລົ້ມເຫລວ.

method=
ຕັ້ງຄ່າເວີຊັນໂປຣໂຕຄໍທີ່ຈະໃຊ້. ສະຕຣິງທີ່ຖືກຕ້ອງ (ບໍ່ແມ່ນຕົວພິມນ້ອຍໃຫຍ່) ແມ່ນ:

SSL2 ເລືອກໂປຣໂຕຄໍ SSL ລຸ້ນ 2.

SSL3 ເລືອກໂປຣໂຕຄໍ SSL ລຸ້ນ 3.

SSL23 ເລືອກໂປຣໂຕຄໍ SSL ຫຼື TLS ທີ່ດີທີ່ສຸດທີ່ມີຢູ່. ນີ້ແມ່ນຄ່າເລີ່ມຕົ້ນເມື່ອຕົວເລືອກນີ້
ບໍ່ໄດ້ສະຫນອງໃຫ້.

TLS1 ເລືອກ TLS protocol ເວີຊັ່ນ 1.

TLS1.1 ເລືອກ TLS protocol ເວີຊັ່ນ 1.1.

TLS1.2 ເລືອກ TLS protocol ເວີຊັ່ນ 1.2.

DTLS1 ເລືອກໂປຣໂຕຄໍ DTLS ລຸ້ນ 1.

verify=
ຄວບຄຸມການກວດສອບໃບຢັ້ງຢືນຂອງເພື່ອນມິດ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 1 (ຄວາມຈິງ). ການປິດການຢັ້ງຢືນ
ອາດຈະເປີດເຕົ້າຮັບຂອງທ່ານສໍາລັບທຸກຄົນ, ເຮັດໃຫ້ການເຂົ້າລະຫັດບໍ່ມີປະໂຫຍດ!

cert=
ລະບຸໄຟລ໌ດ້ວຍໃບຮັບຮອງ ແລະກະແຈສ່ວນຕົວສຳລັບການພິສູດຢືນຢັນ. ໄດ້
ໃບຮັບຮອງຕ້ອງຢູ່ໃນຮູບແບບ OpenSSL (*.pem). ດ້ວຍ openssl-listen, ໃຊ້ສິ່ງນີ້
ທາງ​ເລືອກ​ແມ່ນ​ແນະ​ນໍາ​ຢ່າງ​ແຂງ​ແຮງ​. ຍົກເວັ້ນລະຫັດລັບ aNULL, "ບໍ່ມີລະຫັດລັບທີ່ໃຊ້ຮ່ວມກັນ".
ຈະເກີດຂຶ້ນເມື່ອບໍ່ມີການໃຫ້ໃບຢັ້ງຢືນ.

ຫຼັກ=
ລະບຸໄຟລ໌ດ້ວຍລະຫັດສ່ວນຕົວ. ກະແຈສ່ວນຕົວອາດຈະຢູ່ໃນໄຟລ໌ນີ້ ຫຼືຢູ່ໃນ
ໄຟລ​໌​ໃຫ້​ກັບ​ທາງ​ເລືອກ​ຂອງ​ໃບ​ຢັ້ງ​ຢືນ​. ພັກ​ທີ່​ຕ້ອງ​ພິ​ສູດ​ວ່າ​ມັນ​ແມ່ນ​
ເຈົ້າຂອງໃບຢັ້ງຢືນຕ້ອງການກະແຈສ່ວນຕົວ.

dhparams=
ລະບຸໄຟລ໌ດ້ວຍພາລາມິເຕີ Diffie Hellman. ຕົວກໍານົດການເຫຼົ່ານີ້ອາດຈະເປັນ
ໃນໄຟລ໌ທີ່ມອບໃຫ້ດ້ວຍທາງເລືອກການຢັ້ງຢືນໃນກໍລະນີທີ່ທາງເລືອກ dhparams ບໍ່ແມ່ນ
ຕ້ອງການ.

cafile=
ລະບຸໄຟລ໌ດ້ວຍໃບຢັ້ງຢືນສິດອຳນາດທີ່ເຊື່ອຖືໄດ້ (ຮາກ). ໄຟລ໌ຕ້ອງເປັນ
ໃນຮູບແບບ PEM ແລະຄວນຈະມີຫນຶ່ງຫຼືຫຼາຍໃບຢັ້ງຢືນ. ຝ່າຍ​ທີ່​ກວດ​ສອບ
ການກວດສອບຄວາມຖືກຕ້ອງຂອງ peer trusts ພຽງແຕ່ໃບຢັ້ງຢືນທີ່ຢູ່ໃນໄຟລ໌ນີ້.

capath=
ລະບຸໄດເລກະທໍລີດ້ວຍໃບຢັ້ງຢືນທີ່ເຊື່ອຖືໄດ້ (ຮາກ). ໄດເລກະທໍລີຕ້ອງ
ມີໃບຮັບຮອງໃນຮູບແບບ PEM ແລະເຄື່ອງໝາຍຂອງພວກມັນ (ເບິ່ງເອກະສານ OpenSSL)

egd=
ໃນບາງລະບົບ, openssl ຕ້ອງການແຫຼ່ງຂໍ້ມູນແບບສຸ່ມຢ່າງຊັດເຈນ. ລະບຸ
ຊື່ socket ທີ່ entropy ເກັບ daemon ເຊັ່ນ egd ໃຫ້ຂໍ້ມູນແບບສຸ່ມ, e.g
/dev/egd-pool.

pseudo ໃນລະບົບທີ່ openssl ບໍ່ສາມາດຊອກຫາແຫຼ່ງ entropy ແລະບ່ອນທີ່ບໍ່ມີ entropy
ການລວບລວມ daemon ສາມາດຖືກນໍາໃຊ້, ທາງເລືອກນີ້ກະຕຸ້ນກົນໄກການສະຫນອງ
pseudo entropy. ອັນນີ້ຖືກເກັບໄວ້ໂດຍໃຊ້ເວລາປັດຈຸບັນເປັນ microseconds ສໍາລັບ
ການໃຫ້ອາຫານເຄື່ອງສ້າງຕົວເລກແບບສຸ່ມ libc pseudo ດ້ວຍຄ່າເບື້ອງຕົ້ນ. openssl ແມ່ນ
ຫຼັງຈາກນັ້ນ, ປ້ອນດ້ວຍຜົນຜະລິດຈາກການໂທແບບສຸ່ມ\().
ໝາຍເຫດ: ກົນໄກນີ້ບໍ່ພຽງພໍສຳລັບການຜະລິດກະແຈທີ່ປອດໄພ!

compress
ເປີດໃຊ້ຫຼືປິດການໃຊ້ການບີບອັດສໍາລັບການເຊື່ອມຕໍ່. ຕັ້ງຄ່ານີ້ເປັນ "ບໍ່ມີ"
ປິດການບີບອັດ, ການຕັ້ງມັນເປັນ "ອັດຕະໂນມັດ" ເຮັດໃຫ້ OpenSSL ເລືອກສິ່ງທີ່ດີທີ່ສຸດທີ່ມີຢູ່
algorithm ສະຫນັບສະຫນູນໂດຍທັງສອງຝ່າຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນເພື່ອບໍ່ໃຫ້ແຕະໃດໆ
ການຕັ້ງຄ່າທີ່ກ່ຽວຂ້ອງກັບການບີບອັດ. ໝາຍເຫດ: ຕ້ອງການ OpenSSL 0.9.8 ຫຼືສູງກວ່າ ແລະປິດການໃຊ້ງານ
ການບີບອັດດ້ວຍ OpenSSL 0.9.8 ມີຜົນກະທົບຕໍ່ການເຊື່ອມຕໍ່ໃຫມ່ທັງຫມົດໃນຂະບວນການ.

commonname=
ລະບຸຊື່ທົ່ວໄປທີ່ໃບຮັບຮອງຄູ່ຕ້ອງກົງກັນ. ດ້ວຍ OPENSSL-CONNECT
ທີ່ຢູ່ ນີ້ overrides ຊື່ເຈົ້າພາບທີ່ໃຫ້ຫຼືທີ່ຢູ່ເປົ້າຫມາຍ IP; ດ້ວຍ OPENSSL-LISTEN
ນີ້ຈະເປີດການກວດສອບຊື່ທົ່ວໄປຂອງໃບຢັ້ງຢືນມິດສະຫາຍ. ຕົວເລືອກນີ້ມີຄວາມຫມາຍເທົ່ານັ້ນ
ເມື່ອທາງເລືອກຢັ້ງຢືນບໍ່ໄດ້ຖືກປິດໃຊ້ງານ ແລະລະຫັດລັບທີ່ເລືອກໃຫ້ເພື່ອນຮ່ວມ
ໃບຢັ້ງຢືນ.

ພິກ ເປີດໃຊ້ໂໝດ FIPS ຖ້າຖືກລວບລວມຢູ່ໃນ. ສໍາລັບຂໍ້ມູນກ່ຽວກັບການປະຕິບັດການເຂົ້າລະຫັດ FIPS
ມາດຕະຖານເບິ່ງ http://oss-institute.org/fips-faq.html. ໂໝດນີ້ອາດຈະຕ້ອງການແບບນັ້ນ
ໃບຢັ້ງຢືນທີ່ກ່ຽວຂ້ອງແມ່ນຖືກສ້າງຂຶ້ນດ້ວຍເວີຊັນທີ່ເປີດໃຊ້ FIPS ຂອງ openssl.
ການຕັ້ງຄ່າ ຫຼືການລຶບລ້າງຕົວເລືອກນີ້ຢູ່ໃນທີ່ຢູ່ socat ດຽວມີຜົນກະທົບກັບທີ່ຢູ່ OpenSSL ທັງໝົດ
ຂອງຂະບວນການນີ້.

ທົດແທນ ທາງເລືອກ ກຸ່ມ

ທາງເລືອກທີ່ຄວບຄຸມການລອງໃຫມ່ຂອງບາງການໂທລະບົບ, ໂດຍສະເພາະຄວາມພະຍາຍາມເຊື່ອມຕໍ່.

ລອງໃຫມ່=
ຈຳນວນການລອງອີກຄັ້ງກ່ອນທີ່ການເຊື່ອມຕໍ່ ຫຼືຄວາມພະຍາຍາມຟັງຈະຖືກຍົກເລີກ. ຄ່າເລີ່ມຕົ້ນແມ່ນ
0, ຊຶ່ງຫມາຍຄວາມວ່າພຽງແຕ່ຫນຶ່ງຄວາມພະຍາຍາມ.

interval=
ເວລາລະຫວ່າງຄວາມພະຍາຍາມຕິດຕໍ່ກັນ (ວິນາທີ, [timespec]). ຄ່າເລີ່ມຕົ້ນແມ່ນ 1 ວິນາທີ.

ຕະຫຼອດໄປ
ປະຕິບັດການພະຍາຍາມໃຫມ່ບໍ່ຈໍາກັດຈໍານວນຄັ້ງ.

TUN ທາງເລືອກ ກຸ່ມ

ຕົວເລືອກທີ່ຄວບຄຸມທີ່ຢູ່ອຸປະກອນການໂຕ້ຕອບ Linux TUN/TAP.

tun-device=
ແນະນຳໃຫ້ socat ໃຊ້ເສັ້ນທາງອື່ນສຳລັບອຸປະກອນໂຄນ TUN. ຄ່າເລີ່ມຕົ້ນແມ່ນ
/dev/net/tun.

tun-name=
ໃຫ້ສ່ວນຕິດຕໍ່ເຄືອຂ່າຍຜົນໄດ້ຮັບເປັນຊື່ສະເພາະແທນລະບົບ
ສ້າງຂຶ້ນ (tun0, tun1, ແລະອື່ນໆ)

tun-type=[tun|ແຕະ]
ກໍານົດປະເພດຂອງອຸປະກອນ TUN; ໃຊ້ຕົວເລືອກນີ້ເພື່ອສ້າງອຸປະກອນ TAP. ເບິ່ງ
Linux docu ສໍາລັບຄວາມແຕກຕ່າງລະຫວ່າງປະເພດເຫຼົ່ານີ້. ເມື່ອເຈົ້າພະຍາຍາມສ້າງຕັ້ງ ກ
ອຸໂມງລະຫວ່າງສອງອຸປະກອນ TUN, ປະເພດຂອງພວກມັນຄວນຈະຄືກັນ.

iff-no-pi
ຕັ້ງທຸງ IFF_NO_PI ເຊິ່ງຄວບຄຸມວ່າອຸປະກອນປະກອບມີແພັກເກັດເພີ່ມເຕີມຫຼືບໍ່
ຂໍ້​ມູນ​ໃນ tunnel ໄດ້​. ໃນເວລາທີ່ທ່ານພະຍາຍາມສ້າງອຸໂມງລະຫວ່າງສອງ TUN
ອຸປະກອນ, ທຸງເຫຼົ່ານີ້ຄວນຈະມີຄ່າດຽວກັນ.

iff-up ຕັ້ງຄ່າສະຖານະການໂຕ້ຕອບເຄືອຂ່າຍ TUN UP. ແນະນໍາຢ່າງແຂງແຮງ.

iff-ອອກອາກາດ
ຕັ້ງທຸງ BROADCAST ຂອງສ່ວນຕິດຕໍ່ເຄືອຂ່າຍ TUN.

iff-debug
ຕັ້ງທຸງ DEBUG ຂອງສ່ວນຕິດຕໍ່ເຄືອຂ່າຍ TUN.

iff-loopback
ຕັ້ງຄ່າທຸງ LOOPBACK ຂອງສ່ວນຕິດຕໍ່ເຄືອຂ່າຍ TUN.

ຈຸດ iff-point
ຕັ້ງທຸງ POINTOPOINT ຂອງອຸປະກອນ TUN.

iff-notrailers
ຕັ້ງທຸງ NOTRAILERS ຂອງອຸປະກອນ TUN.

iff-ແລ່ນ
ຕັ້ງທຸງ RUNNING ຂອງອຸປະກອນ TUN.

iff-noarp
ຕັ້ງທຸງ NOARP ຂອງອຸປະກອນ TUN.

iff-promisc
ຕັ້ງທຸງ PROMISC ຂອງອຸປະກອນ TUN.

iff-allmulti
ຕັ້ງທຸງ ALLMULTI ຂອງອຸປະກອນ TUN.

iff-master
ຕັ້ງທຸງ MASTER ຂອງອຸປະກອນ TUN.

iff-slave
ຕັ້ງທຸງ SLAVE ຂອງອຸປະກອນ TUN.

iff-multicast
ຕັ້ງທຸງ MULTICAST ຂອງອຸປະກອນ TUN.

iff-portsel
ຕັ້ງທຸງ PORTSEL ຂອງອຸປະກອນ TUN.

iff-automedia
ຕັ້ງທຸງ AUTOMEDIA ຂອງອຸປະກອນ TUN.

iff-dynamic
ຕັ້ງທຸງ DYNAMIC ຂອງອຸປະກອນ TUN.

ຂໍ້ມູນ VALUES


ພາກນີ້ອະທິບາຍເຖິງປະເພດຂໍ້ມູນທີ່ແຕກຕ່າງກັນທີ່ກໍານົດທີ່ຢູ່ແລະທາງເລືອກທີ່ຢູ່
ສາມາດເອົາ.

ຊ່ວງທີ່ຢູ່
ປະຈຸບັນພຽງແຕ່ຖືກປະຕິບັດສໍາລັບ IPv4 ແລະ IPv6. ເບິ່ງຕົວເລືອກທີ່ຢູ່ 'ໄລຍະ'

bool "0" ຫຼື "1"; ຖ້າຄ່າຖືກຍົກເວັ້ນ, "1" ຖືກປະຕິບັດ.

byte ຕົວເລກ int unsigned, ອ່ານດ້ວຍ strtoul() , ຕໍ່າກວ່າ ຫຼືເທົ່າກັບ UCHAR_MAX .

ເສັ້ນຄໍາສັ່ງ
ສະຕຣິງທີ່ລະບຸຊື່ໂປຣແກຣມ ແລະອາກິວເມັນຂອງມັນ, ແຍກອອກດ້ວຍຊ່ອງຫວ່າງດຽວ.

data A ຂໍ້ມູນສະເພາະຂອງຂໍ້ມູນດິບດັ່ງຕໍ່ໄປນີ້ ຕົກ syntax. ໃນປັດຈຸບັນຮູບແບບທີ່ຖືກຕ້ອງພຽງແຕ່ເປັນ
ສະຕຣິງທີ່ເລີ່ມຕົ້ນດ້ວຍ 'x' ຕາມດ້ວຍຕົວເລກຄູ່ຂອງຕົວເລກ hex, ລະບຸ a
ລໍາດັບຂອງ bytes.

ລະບົບ
ສະຕຣິງທີ່ມີຊື່ຕາມປົກກະຕິ UN*X directory semantics.

ສະຖານທີ່
ຊື່ຂອງສະຖານທີ່ syslog ໃນຕົວພິມນ້ອຍ.

fdnum ປະເພດ int unsigned, ອ່ານດ້ວຍ strtoul(), ລະບຸຕົວອະທິບາຍໄຟລ໌ UN*X.

ຊື່​ເອ​ກະ​ສານ
ສະຕຣິງທີ່ມີຊື່ໄຟລ໌ UN*X ປົກກະຕິ.

group ຖ້າຕົວອັກສອນທຳອິດເປັນຕົວເລກທົດສະນິຍົມ, ຄ່າຈະຖືກອ່ານດ້ວຍ strtoul() as
unsigned integer ລະບຸ ID ກຸ່ມ. ຖ້າບໍ່ດັ່ງນັ້ນ, ມັນຕ້ອງເປັນກຸ່ມທີ່ມີຢູ່ແລ້ວ
ຊື່

int A ຈໍານວນປະຕິບັດຕາມກົດລະບຽບຂອງຫນ້າທີ່ sttol() ທີ່ມີຖານ "0", ie decimal
ຕົວເລກ, ເລກແປດທີ່ມີ "0", ຫຼືເລກຖານສິບຫົກທີ່ມີ "0x". ໄດ້
ຄ່າຕ້ອງພໍດີກັບ C int.

ການໂຕ້ຕອບ
ສະຕຣິງທີ່ລະບຸຊື່ອຸປະກອນຂອງສ່ວນຕິດຕໍ່ເຄືອຂ່າຍຕາມທີ່ສະແດງໂດຍ ifconfig ຫຼື
procan, ຕົວຢ່າງ "eth0".

ທີ່ຢູ່ IP
ທີ່ຢູ່ IPv4 ໃນເຄື່ອງໝາຍຕົວເລກ ແລະຈຸດ, ທີ່ຢູ່ IPv6 ໃນໝາຍເລກ hex
ຢູ່ໃນວົງເລັບ, ຫຼືຊື່ເຈົ້າພາບທີ່ແກ້ໄຂເປັນ IPv4 ຫຼືທີ່ຢູ່ IPv6.
ຕົວຢ່າງ: 127.0.0.1, [::1], www.dest-unreach.org, dns1

IPv4 address
ທີ່ຢູ່ IPv4 ໃນຕົວເລກແລະຈຸດຫມາຍເລກຫຼືຊື່ເຈົ້າພາບທີ່ແກ້ໄຂເປັນ IPv4
ທີ່ຢູ່.
ຕົວຢ່າງ: 127.0.0.1, www.dest-unreach.org, dns2

IPv6 address
ທີ່ຢູ່ iPv6 ໃນເຄື່ອງໝາຍເລກ hexnumbers-and-colons ທີ່ຕິດຢູ່ໃນວົງເລັບ, ຫຼື a
ຊື່ເຈົ້າພາບທີ່ແກ້ໄຂເປັນທີ່ຢູ່ IPv6.
Examples: [::1], [1234:5678:9abc:def0:1234:5678:9abc:def0], ip6name.domain.org

ຕົວເລກຍາວ A ອ່ານດ້ວຍ sttol() . ຄ່າຕ້ອງພໍດີກັບ C long.

ຍາວຍາວ
ຕົວເລກທີ່ອ່ານດ້ວຍ sttoll(). ຄ່າຕ້ອງພໍດີກັບ C long long.

off_t ການຈັດຕັ້ງປະຕິບັດແມ່ນຂຶ້ນກັບຕົວເລກທີ່ເຊັນ, ປົກກະຕິແລ້ວ 32 bits, ອ່ານດ້ວຍ sttol ຫຼື
sttoll.

off64_t
ການປະຕິບັດແມ່ນຂຶ້ນກັບຕົວເລກທີ່ລົງນາມ, ປົກກະຕິແລ້ວ 64 bits, ອ່ານດ້ວຍ sttol ຫຼື
sttoll.

mode_t ຈຳນວນເຕັມທີ່ບໍ່ໄດ້ເຊັນ, ອ່ານດ້ວຍ strtoul() , ກຳນົດຮູບແບບ (ການອະນຸຍາດ) bits.

pid_t ຕົວເລກ, ອ່ານດ້ວຍ sttol() , ລະບຸ id ຂະບວນການ.

port A uint16_t (16 bit unsigned number) ລະບຸພອດ TCP ຫຼື UDP, ອ່ານດ້ວຍ.
strtoul() .

protocol
ຕົວເລກ 8 ບິດທີ່ບໍ່ໄດ້ເຊັນ, ອ່ານດ້ວຍ strtoul() .

size_t ຕົວເລກທີ່ບໍ່ມີລາຍເຊັນທີ່ມີຂໍ້ຈໍາກັດ size_t, ອ່ານດ້ວຍ strtoul .

ຊື່ຖົງຕີນ
ທີ່ຢູ່ socket. ເບິ່ງທີ່ຢູ່ທາງເລືອກ 'bind'

string A ລຳດັບຂອງຕົວອັກສອນ, ບໍ່ມີ '\0' ແລະ, ຂຶ້ນກັບຕຳແໜ່ງພາຍໃນ
ເສັ້ນຄໍາສັ່ງ, ':', ',', ຫຼື "!!". ໃຫ້ສັງເກດວ່າທ່ານອາດຈະຕ້ອງຫນີ shell meta
ຕົວອັກສອນໃນແຖວຄໍາສັ່ງ.

ບໍລິການ TCP
ຊື່ການບໍລິການ, ບໍ່ໄດ້ເລີ່ມຕົ້ນດ້ວຍຕົວເລກ, ທີ່ຖືກແກ້ໄຂໂດຍ getservbyname() , ຫຼື
unsigned int 16 bit number ອ່ານດ້ວຍ strtoul() .

ເວລາ
ການເລື່ອນສອງເທົ່າທີ່ລະບຸວິນາທີ; ຈໍາ​ນວນ​ແມ່ນ​ມີ​ແຜນ​ທີ່​ເຂົ້າ​ໄປ​ໃນ​ເວ​ລາ​ໂຄງ​ສ້າງ​,
ປະ​ກອບ​ດ້ວຍ​ວິ​ນາ​ທີ​ແລະ microseconds​.

timepec
ການເລື່ອນສອງເທົ່າທີ່ລະບຸວິນາທີ; ຈໍາ​ນວນ​ແມ່ນ​ມີ​ແຜນ​ທີ່​ເຂົ້າ​ໄປ​ໃນ struct timespec​,
ປະກອບດ້ວຍວິນາທີ ແລະ nanoseconds.

ບໍລິການ UDP
ຊື່ການບໍລິການ, ບໍ່ໄດ້ເລີ່ມຕົ້ນດ້ວຍຕົວເລກ, ທີ່ຖືກແກ້ໄຂໂດຍ getservbyname() , ຫຼື
unsigned int 16 bit number ອ່ານດ້ວຍ strtoul() .

ລົງນາມ int
ຕົວເລກທີ່ອ່ານດ້ວຍ strtoul(). ຄ່າຈະຕ້ອງພໍດີກັບ C unsigned int.

user ຖ້າຕົວອັກສອນທໍາອິດເປັນຕົວເລກທົດສະນິຍົມ, ຄ່າຈະຖືກອ່ານດ້ວຍ strtoul() as
unsigned integer ລະບຸ ID ຜູ້ໃຊ້. ຖ້າບໍ່ດັ່ງນັ້ນ, ມັນຕ້ອງເປັນຊື່ຜູ້ໃຊ້ທີ່ມີຢູ່ແລ້ວ.

ຕົວຢ່າງ


socat - TCP4:www.domain.org:80

ໂອນຂໍ້ມູນລະຫວ່າງ STDIO (-) ແລະການເຊື່ອມຕໍ່ TCP4 ກັບພອດ 80 ຂອງໂຮດ
www.domain.org. ຕົວຢ່າງນີ້ສົ່ງຜົນໃຫ້ມີການເຊື່ອມຕໍ່ແບບໂຕ້ຕອບທີ່ຄ້າຍຄືກັບ telnet
ຫຼື netcat. ຕົວກໍານົດການ terminal stdin ບໍ່ໄດ້ປ່ຽນແປງ, ດັ່ງນັ້ນທ່ານອາດຈະປິດ
relay ກັບ ^D ຫຼືເອົາລູກອອກດ້ວຍ ^C.

socat -d -d READLINE,history=$HOME/.http_history \
TCP4:www.domain.org:www,crnl

ນີ້ແມ່ນຄ້າຍຄືກັນກັບຕົວຢ່າງທີ່ຜ່ານມາ, ແຕ່ທ່ານສາມາດແກ້ໄຂເສັ້ນປະຈຸບັນໃນ a
bash like ລັກ​ສະ​ນະ (READLINE) ແລະ​ນໍາ​ໃຊ້​ໄຟລ​໌​ປະ​ຫວັດ​ສາດ .http_history​; socat ພິມ
ຂໍ້ຄວາມກ່ຽວກັບຄວາມຄືບໜ້າ (-d -d). ພອດແມ່ນລະບຸໂດຍຊື່ບໍລິການ (www), ແລະ
ຕົວອັກສອນການຢຸດສາຍເຄືອຂ່າຍທີ່ຖືກຕ້ອງ (crnl) ແທນ NL ຖືກໃຊ້.

socat TCP4-ຟັງ: www TCP4:www.domain.org:www

ຕິດຕັ້ງຕົວສົ່ງຕໍ່ພອດ TCP ແບບງ່າຍດາຍ. ດ້ວຍ TCP4-LISTEN ມັນຟັງຢູ່ໃນຜອດທ້ອງຖິ່ນ
"www" ຈົນກ່ວາການເຊື່ອມຕໍ່ເຂົ້າມາ, ຍອມຮັບມັນ, ຫຼັງຈາກນັ້ນເຊື່ອມຕໍ່ກັບເຈົ້າພາບທາງໄກ
(TCP4) ແລະເລີ່ມການໂອນຂໍ້ມູນ. ມັນຈະບໍ່ຍອມຮັບການເຊື່ອມຕໍ່ທີສອງ.

socat -d -d -lmlocal2 \
TCP4-LISTEN:80,bind=myaddr1,reuseaddr,fork,su=nobody,range=10.0.0.0/8 \
TCP4:www.domain.org:80,bind=myaddr2

ຕົວສົ່ງຕໍ່ພອດ TCP, ແຕ່ລະດ້ານຖືກຜູກມັດກັບທີ່ຢູ່ IP ທ້ອງຖິ່ນອື່ນ (ຜູກມັດ). ນີ້
ຕົວຢ່າງຈັດການກັບຈໍານວນການເຊື່ອມຕໍ່ແບບຂະຫນານຫຼືຕິດຕໍ່ກັນເກືອບເປັນຕົວຕັ້ງຕົວຕີ
ໂດຍ fork'ing ຂະບວນການໃຫມ່ຫຼັງຈາກແຕ່ລະຍອມຮັບ () . ມັນສະຫນອງຄວາມປອດໄພເລັກນ້ອຍໂດຍ
su'ing ກັບຜູ້ໃຊ້ບໍ່ມີໃຜຫຼັງຈາກ forking; ມັນພຽງແຕ່ອະນຸຍາດໃຫ້ເຊື່ອມຕໍ່ຈາກເອກະຊົນ
10 ເຄືອຂ່າຍ (ໄລຍະ); ເນື່ອງຈາກ reuseaddr, ມັນອະນຸຍາດໃຫ້ restart ທັນທີຫຼັງຈາກຕົ້ນສະບັບ
ການຢຸດເຊົາຂະບວນການ, ເຖິງແມ່ນວ່າບາງເຕົ້າສຽບຂອງເດັກບໍ່ໄດ້ຖືກປິດຫມົດ.
ດ້ວຍ -lmlocal2, socat ບັນທຶກໄປຫາ stderr ຈົນກ່ວາບັນລຸການຍອມຮັບ loop ສໍາເລັດ.
ການບັນທຶກເພີ່ມເຕີມແມ່ນມຸ້ງໄປຫາ syslog ກັບ facility local2.

socat TCP4-LISTEN:5555,fork,tcpwrap=script \
EXEC:/bin/myscript,chroot=/home/sandbox,su-d=sandbox,pty,stderr

ເຄື່ອງແມ່ຂ່າຍທີ່ງ່າຍດາຍທີ່ຍອມຮັບການເຊື່ອມຕໍ່ (TCP4-LISTEN) ແລະ fork ເປັນລູກໃຫມ່
ຂະບວນການສໍາລັບການເຊື່ອມຕໍ່ແຕ່ລະຄົນ; ເດັກນ້ອຍທຸກຄົນເຮັດຫນ້າທີ່ເປັນ relay ດຽວ. ລູກຄ້າຕ້ອງ
ກົງກັບກົດລະບຽບສໍາລັບຊື່ຂະບວນການ daemon "script" ໃນ /etc/hosts.allow ແລະ
/etc/hosts.deny, ຖ້າບໍ່ດັ່ງນັ້ນມັນຖືກປະຕິເສດການເຂົ້າເຖິງ (ເບິ່ງ "man 5 hosts_access"). ສໍາລັບ
EXEC'uting the program, the child process chroot's to /home/sandbox, su's ກັບຜູ້ໃຊ້
sandbox, ແລະຫຼັງຈາກນັ້ນເລີ່ມຕົ້ນໂຄງການ /home/sandbox/bin/myscript. Socat ແລະ myscript
ຕິດຕໍ່ສື່ສານຜ່ານ pseudo tty (pty); stderr ຂອງ myscript ຖືກໂອນໄປຫາ stdout, ດັ່ງນັ້ນ
ຂໍ້ຄວາມຄວາມຜິດພາດຂອງມັນຖືກໂອນຜ່ານ socat ກັບລູກຄ້າທີ່ເຊື່ອມຕໍ່.

socat EXEC:"mail.sh [email protected]",fdin=3,fdout=4 \
TCP4:mail.relay.org:25,crnl,bind=alias1.server.org,mss=512

mail.sh ເປັນ Shell script, ແຈກຢາຍກັບ socat, ທີ່ປະຕິບັດ SMTP ງ່າຍດາຍ
ລູກ​ຄ້າ. ມັນຖືກຕັ້ງໂຄງການໃຫ້ "ເວົ້າ" SMTP ໃນ FDs 3 (ໃນ) ແລະ 4 (ອອກ). Fdin ໄດ້
ແລະທາງເລືອກ fdout ບອກ socat ເພື່ອນໍາໃຊ້ FDs ເຫຼົ່ານີ້ສໍາລັບການສື່ສານກັບໂຄງການ.
ເນື່ອງຈາກວ່າ mail.sh ສືບທອດ stdin ແລະ stdout ໃນຂະນະທີ່ socat ບໍ່ໄດ້ໃຊ້ພວກມັນ, script
ສາມາດອ່ານເນື້ອໃນຈົດໝາຍຈາກ stdin. Socat ເຮັດໃຫ້ alias1 ທີ່ຢູ່ແຫຼ່ງທ້ອງຖິ່ນຂອງທ່ານ
(bind), ເບິ່ງແຍງການປິດສາຍເຄືອຂ່າຍທີ່ຖືກຕ້ອງ (crnl) ແລະສົ່ງສູງສຸດ 512.
ໄບຕ໌ຂໍ້ມູນຕໍ່ແພັກເກັດ (mss).

socat -,escape=0x0f /dev/ttyS0,rawer,crnl

ເປີດການເຊື່ອມຕໍ່ແບບໂຕ້ຕອບຜ່ານເສັ້ນ serial, ເຊັ່ນ: ສໍາລັບການສົນທະນາກັບໂມເດັມ.
rawer ກໍານົດຕົວກໍານົດການ terminal ຂອງ console ແລະ ttyS0 ເປັນຄ່າທີ່ສາມາດປະຕິບັດໄດ້,
crnl ແປງເພື່ອແກ້ໄຂຕົວອັກສອນແຖວໃໝ່. escape ອະນຸຍາດໃຫ້ຢຸດ socat ໄດ້
ຂະ​ບວນ​ການ​ທີ່​ມີ​ການ​ຄວບ​ຄຸມ​ລັກ​ສະ​ນະ O.

socat UNIX-LISTEN:/tmp/.X11-unix/X1,ສ້ອມ \
SOCKS4:host.victim.org:127.0.0.1:6000,socksuer=nobody,sourceport=20

ກັບ UNIX-LISTEN, socat ເປີດຊ່ອງສຽບໂດເມນ UNIX /tmp/.X11-unix/X1.
ເສັ້ນທາງນີ້ກົງກັບການສະແດງ XWindow ທ້ອງຖິ່ນ :1 ໃນເຄື່ອງຂອງເຈົ້າ, ດັ່ງນັ້ນ XWindow
ການເຊື່ອມຕໍ່ລູກຄ້າກັບ DISPLAY=:1 ໄດ້ຮັບການຍອມຮັບ. Socat ຈາກນັ້ນເວົ້າກັບ SOCKS4
server host.victim.org ທີ່​ອາດ​ຈະ​ອະ​ນຸ​ຍາດ​ໃຫ້ sourceport 20 ການ​ເຊື່ອມ​ຕໍ່​ໂດຍ​ອີງ​ໃສ່​ເນື່ອງ​ຈາກ​ການ
ຄວາມອ່ອນແອທີ່ກ່ຽວຂ້ອງກັບ FTP ໃນຕົວກອງ IP ຄົງທີ່ຂອງມັນ. Socat ທຳທ່າວ່າຈະຖືກເອີ້ນໂດຍ
socksuser nobody, ແລະຮ້ອງຂໍໃຫ້ເຊື່ອມຕໍ່ກັບພອດ loopback 6000 (ພຽງແຕ່ອ່ອນແອ
sockd configurations ຈະອະນຸຍາດໃຫ້ນີ້). ດັ່ງນັ້ນພວກເຮົາໄດ້ຮັບການເຊື່ອມຕໍ່ກັບຜູ້ເຄາະຮ້າຍ
ເຊີບເວີ XWindow ແລະ, ຖ້າມັນບໍ່ຕ້ອງການ MIT cookies ຫຼື Kerberos authentication,
ພວກເຮົາສາມາດເລີ່ມຕົ້ນການເຮັດວຽກ. ກະລຸນາຮັບຊາບວ່າສາມາດເຊື່ອມຕໍ່ໄດ້ເທື່ອລະອັນ,
ເນື່ອງຈາກວ່າ TCP ສາມາດສ້າງຕັ້ງພຽງແຕ່ຫນຶ່ງເຊດຊັນທີ່ມີຊຸດທີ່ຢູ່ແລະພອດທີ່ກໍານົດໄວ້.

socat -u /tmp/readdata,seek-end=0,ບໍ່ສົນໃຈ -

ນີ້ແມ່ນຕົວຢ່າງສໍາລັບການໂອນຂໍ້ມູນ unidirectional (-u). Socat ໂອນຂໍ້ມູນຈາກ
ໄຟລ໌ /tmp/readdata (ທີ່ຢູ່ implicit GOPEN), ເລີ່ມຕົ້ນໃນຕອນທ້າຍປະຈຸບັນຂອງມັນ
(seek-end=0 ໃຫ້ socat ເລີ່ມການອ່ານໃນຕອນທ້າຍຂອງໄຟລ໌ໃນປະຈຸບັນ; ໃຊ້ seek=0 ຫຼືບໍ່ມີ seek
ທາງ​ເລືອກ​ທີ່​ຈະ​ທໍາ​ອິດ​ທີ່​ຈະ​ອ່ານ​ຂໍ້​ມູນ​ທີ່​ມີ​ຢູ່​ແລ້ວ​) ໃນ​ຮູບ​ແບບ "tail -f​" (ບໍ່​ສົນ​ໃຈ​)​. ໄດ້
"ໄຟລ໌" ອາດຈະເປັນຊ່ອງສຽບໂດເມນ UNIX (ຢ່າໃຊ້ຕົວເລືອກຊອກຫາ
ຫຼັງຈາກນັ້ນ).

(ນອນ 5; echo ລະຫັດຜ່ານ; ນອນ 5; echo ls; ນອນ 1) |
socat - EXEC:'ssh -l ຜູ້ໃຊ້ server',pty,setsid,ctty

EXEC'utes ssh session ກັບເຄື່ອງແມ່ຂ່າຍ. ໃຊ້ pty ສໍາລັບການສື່ສານລະຫວ່າງ socat ແລະ
ssh, ເຮັດໃຫ້ມັນຄວບຄຸມ ssh tty (ctty), ແລະເຮັດໃຫ້ pty ນີ້ເປັນເຈົ້າຂອງໃຫມ່.
ກຸ່ມຂະບວນການ (setsid), ດັ່ງນັ້ນ ssh ຍອມຮັບລະຫັດຜ່ານຈາກ socat.

socat -u TCP4-LISTEN:3334,ໃຊ້ໃໝ່,ສ້ອມ \
ເປີດ:/tmp/in.log,creat,append

ປະຕິບັດຕົວເກັບຂໍ້ຄວາມທີ່ອີງໃສ່ເຄືອຂ່າຍງ່າຍດາຍ. ສໍາລັບລູກຄ້າແຕ່ລະຄົນເຊື່ອມຕໍ່ກັບ
ພອດ 3334, ຂະບວນການເດັກໃຫມ່ແມ່ນຖືກສ້າງຂຶ້ນ (ທາງເລືອກ fork). ຂໍ້​ມູນ​ທັງ​ຫມົດ​ທີ່​ສົ່ງ​ໂດຍ​
ລູກ​ຄ້າ​ໄດ້​ຖືກ​ຕໍ່​ທ້າຍ​ກັບ​ໄຟລ​໌ /tmp/in.log. ຖ້າໄຟລ໌ບໍ່ມີ, socat
ສ້າງສັນມັນ. ທາງເລືອກ reuseaddr ອະນຸຍາດໃຫ້ restart ທັນທີຂອງຂະບວນການເຊີຟເວີ.

socat PTY,link=$HOME/dev/vmodem0,rawer, wait-slave \
EXEC: "ssh modemserver.us.org socat - /dev/ttyS0,nonblock,rawer"

ສ້າງອຸປະກອນ pseudo terminal (PTY) ຢູ່ໃນລູກຄ້າທີ່ສາມາດບັນລຸໄດ້ພາຍໃຕ້
ການເຊື່ອມຕໍ່ສັນຍາລັກ $HOME/dev/vmodem0. ຄໍາຮ້ອງສະຫມັກທີ່ຄາດວ່າຈະມີເສັ້ນ serial ຫຼື
ໂມເດັມສາມາດຖືກຕັ້ງຄ່າເພື່ອໃຊ້ $HOME/dev/vmodem0; ການຈະລາຈອນຂອງມັນຈະຖືກນໍາໄປຫາ a
modemserver ຜ່ານ ssh ບ່ອນທີ່ socat instance ອື່ນເຊື່ອມຕໍ່ກັບມັນ /dev/ttyS0.

socat TCP4-LISTEN:2022,ໃຊ້ໃໝ່,ສ້ອມ \
PROXY:proxy:www.domain.org:22,proxyport=3128,proxyauth=user:pass

ເລີ່ມຕົ້ນຕົວສົ່ງຕໍ່ທີ່ຍອມຮັບການເຊື່ອມຕໍ່ຢູ່ໃນພອດ 2022, ແລະຊີ້ໃຫ້ພວກເຂົາຜ່ານ
proxy daemon ຟັງຢູ່ໃນ port 3128 (proxyport) ໃນ host proxy, ໂດຍໃຊ້
ວິທີການເຊື່ອມຕໍ່, ບ່ອນທີ່ພວກມັນຖືກຮັບຮອງເປັນ "ຜູ້ໃຊ້" ກັບ "ຜ່ານ" (proxyauth). ໄດ້
ຕົວແທນຄວນສ້າງການເຊື່ອມຕໍ່ກັບໂຮດ www.domain.org ໃນພອດ 22 ຈາກນັ້ນ.

socat - OPENSSL:ເຊີບເວີ:4443,cafile=server.crt,cert=client.pem

ແມ່ນລູກຄ້າ OpenSSL ທີ່ພະຍາຍາມສ້າງການເຊື່ອມຕໍ່ທີ່ປອດໄພກັບເຊີບເວີ SSL.
ທາງເລືອກ cafile ລະບຸໄຟລ໌ທີ່ມີໃບຢັ້ງຢືນຄວາມໄວ້ວາງໃຈ: ພວກເຮົາໄວ້ວາງໃຈ
ເຊີບເວີພຽງແຕ່ໃນເວລາທີ່ມັນນໍາສະເຫນີຫນຶ່ງຂອງໃບຢັ້ງຢືນເຫຼົ່ານີ້ແລະຫຼັກຖານສະແດງວ່າມັນເປັນເຈົ້າຂອງ
ກະແຈສ່ວນຕົວທີ່ກ່ຽວຂ້ອງ. ຖ້າບໍ່ດັ່ງນັ້ນການເຊື່ອມຕໍ່ຖືກຢຸດ. ມີ​ໃບ​ຢັ້ງ​ຢືນ​ໄຟລ​໌​
ມີໃບຮັບຮອງລູກຄ້າ ແລະກະແຈສ່ວນຕົວທີ່ກ່ຽວຂ້ອງຖືກລະບຸໄວ້. ນີ້
ແມ່ນຕ້ອງການໃນກໍລະນີທີ່ເຄື່ອງແມ່ຂ່າຍຕ້ອງການການກວດສອບລູກຄ້າ; ອິນເຕີເນັດຫຼາຍ
ເຊີບເວີບໍ່.
ທີ່ຢູ່ທໍາອິດ ('-') ສາມາດຖືກແທນທີ່ດ້ວຍເກືອບທຸກທີ່ຢູ່ socat ອື່ນໆ.

socat OPENSSL-LISTEN:4443,reuseaddr,pf=ip4,fork,cert=server.pem,cafile=client.crt ທໍ່

ເປັນເຄື່ອງແມ່ຂ່າຍ OpenSSL ທີ່ຍອມຮັບການເຊື່ອມຕໍ່ TCP, ນໍາສະເຫນີໃບຢັ້ງຢືນຈາກ
ໄຟລ໌ server.pem ແລະບັງຄັບໃຫ້ລູກຄ້ານໍາສະເຫນີໃບຢັ້ງຢືນທີ່ໄດ້ຮັບການຢັ້ງຢືນ
ຕ້ານ cafile.crt.
ທີ່ຢູ່ທີສອງ ('PIPE') ສາມາດຖືກແທນທີ່ດ້ວຍເກືອບທຸກທີ່ຢູ່ socat ອື່ນໆ.
ສໍາລັບຄໍາແນະນໍາກ່ຽວກັບການສ້າງແລະແຈກຢາຍກະແຈ OpenSSL ແລະໃບຢັ້ງຢືນເບິ່ງ
socat docu socat-openssl.txt ເພີ່ມເຕີມ.

echo | socat -u - file:/tmp/bigfile,create,largefile,seek=100000000000

ສ້າງໄຟລ໌ sparse 100GB; ນີ້ຮຽກຮ້ອງໃຫ້ມີປະເພດລະບົບໄຟລ໌ທີ່ສະຫນັບສະຫນູນນີ້
(ext2, ext3, reiserfs, jfs; ບໍ່ແມ່ນ minix, vfat). ການດໍາເນີນງານຂອງການຂຽນ 1 byte ອາດຈະ
ໃຊ້ເວລາດົນ (reiserfs: ບາງນາທີ; ext2: "ບໍ່" ເວລາ), ແລະໄຟລ໌ຜົນໄດ້ຮັບສາມາດ
ໃຊ້ພື້ນທີ່ດິສກ໌ດ້ວຍພຽງແຕ່ inodes ຂອງມັນ (reiserfs: 2MB; ext2: 16KB).

socat tcp-l:7777,reuseaddr,ສ້ອມ ລະບົບ:'filan -i 0 -s >&2',nofork

ຟັງສໍາລັບການເຊື່ອມຕໍ່ TCP ຂາເຂົ້າຢູ່ໃນພອດ 7777. ສໍາລັບແຕ່ລະການເຊື່ອມຕໍ່ທີ່ຍອມຮັບ,
ຮຽກ​ຮ້ອງ​ໃຫ້​ມີ​ຫອຍ​. ຫອຍນີ້ມີ stdin ແລະ stdout ຂອງມັນເຊື່ອມຕໍ່ໂດຍກົງກັບ TCP
ເຕົ້າສຽບ (nofork). ແກະເລີ່ມຕົ້ນ filan ແລະປ່ອຍໃຫ້ມັນພິມທີ່ຢູ່ socket ກັບ
stderr (ປ່ອງຢ້ຽມຢູ່ປາຍຍອດຂອງທ່ານ).

echo - ໃນ "\0\14\0\0\c" | socat -u - ໄຟລ໌:/usr/bin/squid.exe, seek=0x00074420

ປະຕິບັດຫນ້າທີ່ເປັນຕົວແກ້ໄຂຖານສອງ: ມັນຂຽນ 4 bytes 000 014 000 000 ໄປຫາ
ປະຕິບັດໄດ້ /usr/bin/squid ຢູ່ທີ່ offset 0x00074420 (ນີ້ແມ່ນ patch ໂລກທີ່ແທ້ຈິງທີ່ຈະເຮັດ.
squid ສາມາດປະຕິບັດໄດ້ຈາກ Cygwin ດໍາເນີນການພາຍໃຕ້ Windows, ຕົວຈິງໃນເດືອນພຶດສະພາ 2004).

socat - tcp:www.blackhat.org:31337,readbytes=1000

ເຊື່ອມຕໍ່ກັບການບໍລິການທີ່ບໍ່ຮູ້ຈັກແລະປ້ອງກັນການຖືກນໍ້າຖ້ວມ.

socat -U TCP: ເປົ້າໝາຍ: 9999, end-close TCP-L:8888,reuseaddr,ສ້ອມ

ລວມຂໍ້ມູນທີ່ມາຮອດຈາກສະຕຣີມ TCP ທີ່ແຕກຕ່າງກັນຢູ່ໃນພອດ 8888 ໄປຫາພຽງສາຍດຽວເພື່ອ
ເປົ້າໝາຍ: 9999. ທາງ​ເລືອກ​ໃນ​ຕອນ​ທ້າຍ​ປິດ​ປ້ອງ​ກັນ​ຂະ​ບວນ​ການ​ຂອງ​ເດັກ​ນ້ອຍ forked ໄປ​ໂດຍ​
ທີ່ຢູ່ທີສອງຈາກການຢຸດການເຊື່ອມຕໍ່ທີ່ໃຊ້ຮ່ວມກັນກັບ 9999 (ປິດ\(2) ພຽງແຕ່
unlinks inode ທີ່ຍັງຄົງມີການເຄື່ອນໄຫວຕາບໃດທີ່ຂະບວນການພໍ່ແມ່ມີຊີວິດຢູ່;
shutdown\(2) ຈະປິດການເຊື່ອມຕໍ່ຢ່າງຈິງຈັງ).

socat - UDP4-DATAGRAM:192.168.1.0:123,sp=123,broadcast,range=192.168.1.0/24

ສົ່ງ​ອອກ​ອາ​ກາດ​ກັບ​ເຄືອ​ຂ່າຍ 192.168.1.0/24 ແລະ​ໄດ້​ຮັບ​ການ​ຕອບ​ຄືນ​ຂອງ
timeservers ມີ. ບໍ່ສົນໃຈແພັກເກັດ NTP ຈາກໂຮສນອກເຄືອຂ່າຍນີ້.

socat - SOCKET-DATAGRAM:2:2:17:x007bxc0a80100x0000000000000000,b‐
ind=x007bx00000000x0000000000000000,setsockopt-int=1:6:1,r‐
ange=x0000xc0a80100x0000000000000000:x0000xffffff00x0000000000000000

ແມ່ນ semanically ທຽບເທົ່າກັບຕົວຢ່າງທີ່ຜ່ານມາ, ແຕ່ຕົວກໍານົດການທັງຫມົດແມ່ນ
ລະບຸໄວ້ໃນແບບຟອມທົ່ວໄປ. ຄ່າ 6 ຂອງ setsockopt-int ແມ່ນຄ່າ Linux ສໍາລັບ
SO_BROADCAST.

socat - IP4-DATAGRAM:255.255.255.255:44,broadcast,range=10.0.0.0/8

ສົ່ງການອອກອາກາດໄປຍັງເຄືອຂ່າຍທ້ອງຖິ່ນໂດຍໃຊ້ໂປຣໂຕຄໍ 44. ຍອມຮັບການຕອບກັບຈາກ
ຊ່ວງທີ່ຢູ່ສ່ວນຕົວເທົ່ານັ້ນ.

socat - UDP4-DATAGRAM:224.255.0.1:6666,bind=:6666,ip-add-membership=224.255.0.1:eth0

ໂອນຂໍ້ມູນຈາກ stdin ໄປຫາທີ່ຢູ່ multicast ທີ່ລະບຸໂດຍໃຊ້ UDP. ທັງທ້ອງຖິ່ນ
ແລະພອດຫ່າງໄກສອກຫຼີກແມ່ນ 6666. ບອກອິນເຕີເຟດ eth0 ໃຫ້ຍອມຮັບ multicast
ຊຸດຂອງກຸ່ມທີ່ໃຫ້. ຫຼາຍໂຮສຢູ່ໃນເຄືອຂ່າຍທ້ອງຖິ່ນສາມາດດໍາເນີນການນີ້ໄດ້
ຄໍາສັ່ງ, ດັ່ງນັ້ນຂໍ້ມູນທັງຫມົດທີ່ສົ່ງໂດຍເຈົ້າພາບໃດໆຈະຖືກຮັບໂດຍຜູ້ອື່ນ
ອັນ. ໃຫ້ສັງເກດວ່າມີຫຼາຍເຫດຜົນທີ່ເປັນໄປໄດ້ສໍາລັບຄວາມລົ້ມເຫລວ, ລວມທັງ IP-filters,
ບັນຫາການກໍານົດເສັ້ນທາງ, ການເລືອກການໂຕ້ຕອບຜິດພາດໂດຍລະບົບປະຕິບັດການ, ຂົວ, ຫຼື a
ສະວິດທີ່ຖືກຕັ້ງຄ່າບໍ່ດີ.

socat TCP:host2:4443 TUN: 192.168.255.1/24, ຂຶ້ນ

ສ້າງຕັ້ງຂ້າງຫນຶ່ງຂອງເຄືອຂ່າຍ virtual (ແຕ່ບໍ່ແມ່ນເອກະຊົນ!) ກັບ host2 ບ່ອນທີ່ a
ຂະບວນການທີ່ຄ້າຍຄືກັນອາດຈະດໍາເນີນການ, ດ້ວຍ UDP-L ແລະທີ່ຢູ່ tun 192.168.255.2. ເຂົາເຈົ້າສາມາດບັນລຸ
ເຊິ່ງກັນແລະກັນໂດຍໃຊ້ທີ່ຢູ່ 192.168.255.1 ແລະ 192.168.255.2. ໃຫ້ສັງເກດວ່າການຖ່າຍທອດ
ຕົວຢ່າງ. ຜ່ານ TCP ຫຼື SSL ບໍ່ຮັບປະກັນທີ່ຈະຮັກສາຂອບເຂດຂອງແພັກເກັດແລະອາດຈະເປັນດັ່ງນັ້ນ
ເຮັດໃຫ້ເກີດການສູນເສຍແພັກເກັດ.

socat PTY,link=/var/run/ppp,rawer ການໂຕ້ຕອບ:hdlc0

ຫລີກລ້ຽງບັນຫາທີ່ pppd ຕ້ອງການອຸປະກອນ serial ແລະດັ່ງນັ້ນອາດຈະບໍ່ເປັນ
ສາມາດເຮັດວຽກຢູ່ໃນເສັ້ນ synchronous ທີ່ເປັນຕົວແທນໂດຍອຸປະກອນເຄືອຂ່າຍ. socat
ສ້າງ PTY ເພື່ອເຮັດໃຫ້ pppd ມີຄວາມສຸກ, ຜູກມັດກັບອິນເຕີເຟດເຄືອຂ່າຍ hdlc0, ແລະສາມາດ
ໂອນຂໍ້ມູນລະຫວ່າງອຸປະກອນທັງສອງ. ໃຊ້ pppd ໃນອຸປະກອນ /var/run/ppp ຈາກນັ້ນ.

socat -T 1 -d -d TCP-L:10081,reuseaddr,fork,crf ລະບົບ: "ສຽງ -e \"\\\"HTTP/1.0 200
ຕົກລົງ\\\nປະເພດເອກະສານ: ຂໍ້ຄວາມ/ທຳມະດາ\\\n\\\ndate:
\$\(date\)\\\nເຊີບເວີ:\$SOCAT_SOCKADDR:\$SOCAT_SOCKPORT\\\nລູກຄ້າ:
\$SOCAT_PEERADDR:\$SOCAT_PEERPORT\\\n\\\"\"; cat; echo -e \"\\\"\\\n\\\"\""

ສ້າງເຊີບເວີ HTTP echo ງ່າຍໆ: ລູກຄ້າ HTTP ແຕ່ລະຄົນທີ່ເຊື່ອມຕໍ່ໄດ້ຮັບ HTTP ທີ່ຖືກຕ້ອງ
ຕອບກັບທີ່ມີຂໍ້ມູນກ່ຽວກັບທີ່ຢູ່ລູກຄ້າແລະພອດຕາມທີ່ມັນເຫັນ
ເຊີບເວີໂຮດ, ທີ່ຢູ່ໂຮດ (ເຊິ່ງອາດຈະແຕກຕ່າງກັນໃນເຄື່ອງແມ່ຂ່າຍ multihomed), ແລະ
ການຮ້ອງຂໍລູກຄ້າຕົ້ນສະບັບ.

socat -d -d
UDP4-RECVFROM:9999,ອອກອາກາດສະນັ້ນ,ສະແຕມເວລາ,ip-pktinfo,ip-recverr,ip-recvopts,ip-recvtos,ip-recvttl!!-
ລະບົບ:'ສົ່ງອອກ; ນອນ 1 ' |grep SOCAT

ລໍຖ້າແພັກເກັດ UDP ເຂົ້າມາໃນພອດ 9999 ແລະພິມຕົວແປສະພາບແວດລ້ອມ
ສະໜອງໃຫ້ໂດຍ socat. ໃນລະບົບທີ່ອີງໃສ່ BSD ທ່ານຕ້ອງປ່ຽນ ip-pktinfo ດ້ວຍ
ip-recvdstaddr, ip-recvif. ຫນ້າສົນໃຈໂດຍສະເພາະແມ່ນ SOCAT_IP_DSTADDR: ມັນປະກອບດ້ວຍ
ທີ່ຢູ່ເປົ້າໝາຍຂອງແພັກເກັດທີ່ອາດຈະເປັນ unicast, multicast, ຫຼືອອກອາກາດ
ທີ່ຢູ່.

ທິດສະດີວິທະຍາ


Socat ໃຊ້ກົນໄກການບັນທຶກທີ່ອະນຸຍາດໃຫ້ການກັ່ນຕອງຂໍ້ຄວາມໂດຍຄວາມຮຸນແຮງ. ຄວາມຮຸນແຮງ
ສະຫນອງໃຫ້ແມ່ນເຫມາະສົມກັບບູລິມະສິດ syslog ທີ່ເຫມາະສົມຫຼາຍຫຼືຫນ້ອຍ. ມີຫນຶ່ງຫຼືເຖິງ
ສີ່ການປະກົດຕົວຂອງຕົວເລືອກແຖວຄໍາສັ່ງ -d, ຄວາມສໍາຄັນຕ່ໍາສຸດຂອງຂໍ້ຄວາມທີ່ເປັນ
ອອກສາມາດເລືອກ. ແຕ່ລະຂໍ້ຄວາມປະກອບມີຕົວພິມໃຫຍ່ດຽວທີ່ລະບຸ
ຄວາມຮຸນແຮງຂອງຂໍ້ຄວາມ (ໜຶ່ງໃນ F, E, W, N, I, ຫຼື D)

FATAL: ເງື່ອນໄຂທີ່ຕ້ອງການການຢຸດເຊົາໂຄງການທີ່ບໍ່ມີເງື່ອນໄຂແລະທັນທີທັນໃດ.

ຂໍ້ຜິດພາດ: ເງື່ອນໄຂທີ່ປ້ອງກັນການປະມວນຜົນໂປຼແກຼມທີ່ເຫມາະສົມ. ປົກກະຕິແລ້ວໂຄງການແມ່ນ
ສິ້ນສຸດ (ເບິ່ງທາງເລືອກ -s).

ຄໍາເຕືອນ:
ມີບາງຢ່າງເຮັດວຽກບໍ່ຖືກຕ້ອງ ຫຼືຢູ່ໃນສະຖານະທີ່ແກ້ໄຂຕໍ່ໄປ
ການປຸງແຕ່ງບໍ່ສາມາດຮັບປະກັນໄດ້, ແຕ່ອາດຈະເປັນໄປໄດ້.

ແຈ້ງການ:
ການປະຕິບັດທີ່ຫນ້າສົນໃຈຂອງໂຄງການ, ເຊັ່ນ: ສໍາລັບການຊີ້ນໍາ socat ໃນບາງປະເພດຂອງ
ໂໝດເຊີບເວີ.

ຂໍ້ມູນ: ລາຍລະອຽດຂອງສິ່ງທີ່ໂຄງການເຮັດ, ແລະບາງທີວ່າເປັນຫຍັງມັນເກີດຂຶ້ນ. ອະນຸຍາດໃຫ້ຕິດຕາມກວດກາ
ວົງຈອນຊີວິດຂອງຕົວອະທິບາຍໄຟລ໌.

DEBUG: ລາຍລະອຽດຂອງວິທີການເຮັດວຽກ, ລະບົບຫຼືຫ້ອງສະຫມຸດທັງຫມົດໂທແລະຂອງເຂົາເຈົ້າ
ຜົນໄດ້ຮັບ.

ຂໍ້ຄວາມບັນທຶກສາມາດຖືກຂຽນໃສ່ stderr, ໄຟລ໌, ຫຼື syslog.

ຢູ່ທາງອອກ, socat ໃຫ້ສະຖານະ 0 ຖ້າມັນຖືກປິດເນື່ອງຈາກ EOF ຫຼືບໍ່ມີການເຄື່ອນໄຫວ, ກັບ a
ມູນຄ່າບວກກັບຄວາມຜິດພາດ, ແລະມີມູນຄ່າທາງລົບຕໍ່ຄວາມຜິດພາດທີ່ຮ້າຍແຮງ.

ໃຊ້ filan ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net


ເຊີບເວີ ແລະສະຖານີເຮັດວຽກຟຣີ

ດາວໂຫຼດແອັບ Windows ແລະ Linux

  • 1
    NSIS: Nullsoft Scriptable Install System
    NSIS: Nullsoft Scriptable Install System
    NSIS (Nullsoft Scriptable Install
    System) ເປັນແຫຼ່ງເປີດທີ່ເປັນມືອາຊີບ
    ລະບົບເພື່ອສ້າງຕົວຕິດຕັ້ງ Windows. ມັນ
    ໄດ້ຖືກອອກແບບໃຫ້ມີຂະຫນາດນ້ອຍແລະມີຄວາມຍືດຫຍຸ່ນ
    ເປັນໄປໄດ້...
    ດາວໂຫລດ NSIS: Nullsoft Scriptable Install System
  • 2
    ການກວດສອບຄວາມຖືກຕ້ອງ
    ການກວດສອບຄວາມຖືກຕ້ອງ
    AuthPass ເປັນລະຫັດຜ່ານແຫຼ່ງເປີດ
    ຜູ້​ຈັດ​ການ​ທີ່​ມີ​ສະ​ຫນັບ​ສະ​ຫນູນ​ສໍາ​ລັບ​ການ​ທີ່​ນິ​ຍົມ​ແລະ​
    ພິສູດແລ້ວ Keepass (kdbx 3.x ແລະ kdbx 4.x ...
    ດາວໂຫຼດ authpass
  • 3
    Zabbix
    Zabbix
    Zabbix ແມ່ນຊັ້ນວິສາຫະກິດເປີດ
    ແຫຼ່ງທີ່ແຈກຢາຍການຕິດຕາມການແກ້ໄຂ
    ຖືກອອກແບບມາເພື່ອຕິດຕາມແລະຕິດຕາມ
    ປະສິດທິພາບແລະຄວາມພ້ອມຂອງເຄືອຂ່າຍ
    ເຊີບເວີ, ອຸປະກອນ...
    ດາວໂຫລດ Zabbix
  • 4
    ບໍລິສັດ KDiff3
    ບໍລິສັດ KDiff3
    ບ່ອນເກັບມ້ຽນນີ້ບໍ່ຖືກຮັກສາໄວ້ອີກຕໍ່ໄປ
    ແລະຖືກເກັບຮັກສາໄວ້ເພື່ອຈຸດປະສົງການເກັບມ້ຽນ. ເບິ່ງ
    https://invent.kde.org/sdk/kdiff3 for
    ລະ​ຫັດ​ໃຫມ່​ທີ່​ສຸດ​ແລະ​
    https://download.kde.o...
    ດາວໂຫລດ KDiff3
  • 5
    USBLoaderGX
    USBLoaderGX
    USBLoaderGX ແມ່ນ GUI ສໍາລັບ
    Loader USB ຂອງ Waninkoko, ອີງໃສ່
    libwiigui. ມັນອະນຸຍາດໃຫ້ລາຍຊື່ແລະ
    ເປີດເກມ Wii, ເກມ Cube ແລະ
    homebrew ໃນ Wii ແລະ WiiU ...
    ດາວໂຫລດ USBLoaderGX
  • 6
    Firebird
    Firebird
    Firebird RDBMS ສະຫນອງຄຸນສົມບັດ ANSI SQL
    & ແລ່ນໃນ Linux, Windows &
    ເວທີ Unix ຫຼາຍ. ຄຸນ​ລັກ​ສະ​ນະ
    ຄວາມສອດຄ່ອງ ແລະປະສິດທິພາບທີ່ດີເລີດ
    ແລະພະລັງງານ...
    ດາວໂຫລດ Firebird
  • ເພີ່ມເຕີມ »

Linux ຄຳ ສັ່ງ

  • 1
    aa-clickquery
    aa-clickquery
    aa-clickquery - ໂຄງການສໍາລັບການສອບຖາມ
    click-apparmor DESCRIPTION: ໂຄງການນີ້
    ຖືກນໍາໃຊ້ເພື່ອສອບຖາມ click-apparmor ສໍາລັບ
    ຂໍ້ມູນ. ການນໍາໃຊ້: aa-clickquery
    --click-fra...
    ດໍາເນີນການ aa-clickquery
  • 2
    aa-exec-ຄລິກ
    aa-exec-ຄລິກ
    aa-exec-click - ໂຄງການສໍາລັບການປະຕິບັດ
    ກົດຫຸ້ມຫໍ່ພາຍໃຕ້ການກັກຂັງ
    ລາຍ​ລະ​ອຽດ​: ໂຄງ​ການ​ນີ້​ໄດ້​ຖືກ​ນໍາ​ໃຊ້​ເພື່ອ​
    ປະຕິບັດຊຸດຄລິກພາຍໃຕ້ AppArmor
    ການກັກຂັງ. ຂ້ອຍ...
    ດໍາເນີນການ aa-exec-click
  • 3
    coresendmsg
    coresendmsg
    coresendmsg - ສົ່ງຂໍ້ຄວາມ CORE API
    ກັບ core-daemon daemon ...
    ດໍາເນີນການ coresendmsg
  • 4
    core_server
    core_server
    core_server - ເຄື່ອງແມ່ຂ່າຍຕົ້ນຕໍສໍາລັບ
    SpamBayes. ລາຍລະອຽດ: ປະຈຸບັນໃຫ້ບໍລິການ
    ການໂຕ້ຕອບຂອງເວັບໄຊຕ໌ເທົ່ານັ້ນ. ສຽບເຂົ້າ
    ຜູ້ຟັງສໍາລັບໂປໂຕຄອນຕ່າງໆແມ່ນ TBD.
    ນີ້ ...
    ແລ່ນ core_server
  • 5
    gappletviewer-4.8
    gappletviewer-4.8
    gappletviewer - ໂຫລດແລະແລ່ນ applet
    ...
    ແລ່ນ gappletviewer-4.8
  • 6
    gappletviewer-4.9
    gappletviewer-4.9
    gappletviewer - ໂຫລດແລະແລ່ນ applet
    ...
    ແລ່ນ gappletviewer-4.9
  • ເພີ່ມເຕີມ »

Ad