我已經試過Network.Multicast包,但它確實有效,但是,我找不到指定本地綁定接口(「bond0」或「bond1」等)到組播套接字的方法。我知道在C中我需要使用ioctl將綁定轉換爲struct sockaddr_in,然後將此結構提供給IPPROTO_IP系列的setsockopt下的IP_MULTICAST_IF選項,但我不確定如何在Haskell中執行此操作。有人能幫忙嗎?謝謝!如何在Haskell中指定組播套接字的本地綁定接口?
3
A
回答
1
在network-multicast [1]的源中,我看到了在setInterface函數中設置ip_multicast_if的調用。它總是調用的inet_addr
您在通過主機串的結果。
我會想象你需要編寫自己的FFI綁定和功能做你想做什麼。但基於網絡多播中的代碼,這應該很簡單,我相信一旦你這樣做了,它將成爲圖書館的一個受歡迎的補丁。
相關問題
- 1. 如何確定Linux套接字在C++中綁定的接口
- 2. 如何將套接字綁定到vxWorks中的特定接口
- 3. c#套接字發送/ /綁定udp組播不到選定的網絡接口
- 4. Java Socket:如何將特定本地地址綁定到沒有指定端口號的套接字
- 5. 如何指定在Linux中使用哪個接口套接字
- 6. 綁定UDP套接字連接到特定的本地端點
- 7. 如何將原始套接字綁定到特定接口
- 8. 服務器套接字不綁定到指定的端口
- 9. 什麼是套接字綁定以及如何綁定地址?
- 10. 如何將套接字綁定到python的接口(socket.SO_BINDTODEVICE丟失)
- 11. 如何將原始套接字綁定到特定的端口?
- 12. 未在特定網絡接口上接收的Java組播套接字
- 13. 如何將套接字綁定到虛擬接口?
- 14. 如何將套接字綁定到多個接口
- 15. PHP套接字綁定特權端口
- 16. SignalR連接的綁定本地端口
- 17. 如何將一個鏈接本地地址綁定到一個ipv6套接字
- 18. 如何將本地端點綁定到套接字?
- 19. 如何使用TCPv6將套接字綁定到本地用戶
- 20. 與INADDR_ANY的套接字綁定和具有多接口的多播的特定接口
- 21. 如何動態地將套接字綁定到一個網絡接口?
- 22. PHP:TCP套接字,'無法綁定地址'
- 23. 將套接字綁定到IPv6地址
- 24. Ruby:將監聽套接字綁定到特定接口
- 25. 如何綁定DatagramSocket中的遠程套接字地址
- 26. 如何確定在VB6中建立的套接字的本地端口
- 27. 綁定vs SO_BINDTODEVICE套接字
- 28. 綁定發送套接字
- 29. 綁定套接字Android
- 30. 套接字綁定錯誤
謝謝!它看起來像inet_addr是C API inet_addr的相對直接導入,但爲了實現「bond0」的相同結果,或者需要幾個C API調用。我將嘗試看看如何爲此創建一個ffi綁定。 – diyu01 2011-05-24 16:53:06