DWi*_*ams 4 c# sockets linux mono
我的问题几乎与单声道/ linux套接字被拒绝相同?但似乎这个问题没有得到适当的回答,所以我仍然被卡住了.
我有一个使用Alchemy WebSockets编写的服务器.我在Windows上运行良好但在将其移植到Linux后我无法使其工作.每次尝试启动套接字服务器时,我都会收到以下错误:
System.Net.Sockets.SocketException: Access denied
at System.Net.Sockets.Socket.Bind (System.Net.EndPoint local_end) [0x00051] in /build/src/mono-2.10.8/mcs/class/System/System.Net.Sockets/Socket.cs:1104
at System.Net.Sockets.TcpListener.Start (Int32 backlog) [0x00022] in /build/src/mono-2.10.8/mcs/class/System/System.Net.Sockets/TcpListener.cs:268
at System.Net.Sockets.TcpListener.Start () [0x00000] in /build/src/mono-2.10.8/mcs/class/System/System.Net.Sockets/TcpListener.cs:243
at Alchemy.TcpServer.Listen (System.Object state) [0x00000] in <filename unknown>:0
Run Code Online (Sandbox Code Playgroud)
我试图绑定到1024以上的端口(在这种情况下特别是12345),这不是问题.我没有运行AppArmor或SELinux或类似的东西.我的系统上没有使用该端口.如果重要,我的用户是"网络"组的成员.如果我用sudo运行它,我的程序将绑定到套接字,但这显然不是一个理想的情况.
这是我用来创建套接字并开始监听的代码:
static public void Start(int port, string host)
{
_server = new WebSocketServer(port, IPAddress.Parse(host));
_server.OnConnect = OnConnected;
_server.OnDisconnect = OnDisconnect;
_server.Start();
}
Run Code Online (Sandbox Code Playgroud)
"12345"作为"端口"传递,"192.168.0.11"(我的本地IP)作为"主机"传递.我也试过IPAddress.Any无济于事.
| 归档时间: |
|
| 查看次数: |
1621 次 |
| 最近记录: |