所以这是我的情况.我需要使用套接字来创建服务器和客户端之间的连接.这无法协商.我有一台服务器在运行和监听使用这样的东西
ServerSocket serverSocket = new ServerSocket(portNumber);
while (listening) {
new MultiClientThread(serverSocket.accept()).start();
}
Run Code Online (Sandbox Code Playgroud)
我需要一个客户端连接到正在收听的"portNumber".问题是我正在为客户端使用这行代码.
Socket socket = new Socket(hostName, portNumber);
Run Code Online (Sandbox Code Playgroud)
我不知道如何获得参数的"hostName"部分.如果我知道正在收听的portNumber,是否可以获取"hostName"?或者也许另一种说法是我如何连接到使用tcp连接监听端口的服务器.
string machineName = System.Environment.MachineName;
Run Code Online (Sandbox Code Playgroud)
此代码对我不起作用,错误代码'Environment'不包含'MachineName'的定义
我正在使用Visual Studio 2015和Universal App with C#
还请列出发布答案时我需要使用的命名空间.
我正在寻找一种方法来获取给定域名的主要和次要NS记录,以及与之关联的IP地址.这意味着我正在寻找这些:dns1:ip1:dns2:ip2:
现在这种信息可以从像intodns.com这样的网站上获得,但我正在研究一个庞大的域名列表,并希望用bash脚本自动化这个过程(可能不是这个的最佳选择......).
我试过"nslookup domain.com",它给了我ip1."hostname domain.com"没有返回任何内容......我还测试了"dig domain.com TYPE NS",它没有添加太多信息.
在这一点上,我正在考虑intodns.com页面的wget并解析html以获得我需要的东西......你知道有什么更好的方法吗?
非常感谢!
我很长时间使用我的远程MySQL数据库.
但今天我突然发现我无法连接到数据库.我有一个错误.
"无法从您的IP地址获取主机名".
我在MySQL设置中没有改变任何东西.
有什么问题?
我想设置从一台服务器为多个站点提供服务:
1. http://www.example.org => node.js-www (running on port (50000)
2. http://files.example.org => node.js-files (running on port 50001)
Run Code Online (Sandbox Code Playgroud)
直到现在我才发现docker在使用静态ip时进行端口重定向。
实际上可以使用 docker 通过主机名进行端口重定向吗?
我使用免费的亚马逊 EC2 实例。
谢谢博
编辑:我想让多个节点应用程序在同一端口上运行,但提供不同的主机名。
我试图制作一个自托管的web api服务.我按照教程,它在我的本地计算机上工作正常.
localhost/api/values对预期的JSON响应很好.
现在,我有一个绑定到DNS"myserver.mycompany.com"的服务器.当我在此服务器上启动WebApi 2服务并尝试调用myserver.mycompany.com/api/values时,我找不到404页面错误.
如果我在这个服务器上本地浏览并调用localhost/api/values url它可以正常工作.
这是Startup类的代码:
using Owin;
using System.Web.Http;
namespace SelfHostedWebApi2
{
public class Startup
{
// This code configures Web API. The Startup class is specified as a type
// parameter in the WebApp.Start method.
public void Configuration(IAppBuilder appBuilder)
{
// Configure Web API for self-host.
HttpConfiguration config = new HttpConfiguration();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
appBuilder.UseWebApi(config);
}
}
}
Run Code Online (Sandbox Code Playgroud)
以下是我启动服务器的方式:
using Microsoft.Owin.Hosting;
using System;
using System.Net.Http;
namespace …Run Code Online (Sandbox Code Playgroud) 我在客户端有一些Akka http配置问题.我正在尝试连接到不提供的服务器: - 公共签名证书 - 与主机名相对应的证书我没有关注此nginx,因此我无法更改服务器端配置.我只能改变客户端.
在对配置SSL进行了大量调查之后,我发现我需要在两个不同的级别在application.conf中配置SSL选项:
akka.ssl-config.ssl.loose.acceptAnyCertificate=true
akka.ssl-config.loose.disableHostnameVerification = true
Run Code Online (Sandbox Code Playgroud)
和
ssl-config.loose.acceptAnyCertificate=true
ssl-config.loose.disableHostnameVerification = true
Run Code Online (Sandbox Code Playgroud)
我检查过配置很好用
log-config-on-start = "on"
Run Code Online (Sandbox Code Playgroud)
问题是我仍然在akka调试级别得到错误(不是很清楚)
[ingestionApiClient-akka.actor.default-dispatcher-13] [akka://ingestionApiClient/user/StreamSupervisor-0/flow-216-1-unknown-operation] closing output
Run Code Online (Sandbox Code Playgroud)
看看wireshark我发现这是证书验证的问题
TLSv1 Record Layer: Alert (Level: Fatal, Description: Certificate Unknown)
Run Code Online (Sandbox Code Playgroud)
我想JVM配置是我所做的全部,所以我也尝试按照这种方法修改JVM SSL配置: Java SSL:如何禁用主机名验证
配置SSLContext并将其传递给akka http没问题因为我可以设置默认的HttpsContext
val sc = SSLContext.getInstance("TLS")
*...configuration...*
val customContext =HttpsContext(sc, sslParameters = Some(params))
Http().setDefaultClientHttpsContext(customHttpsContext)
Run Code Online (Sandbox Code Playgroud)
但无论如何我都找不到配置默认主机名验证程序.Http类没有任何方法Http().setDefaultHostnameVerifier
这是我如何连接到服务器
val dataIngestFlow = Http().outgoingConnectionTls(config.httpEndpointHost,config.httpEndpointPort)
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?非常感谢你的帮助
016-03-07T09:10:16.992-0600 W NETWORK [HostnameCanonicalizationWorker] Failed to obtain name info for: [ (1*.*.**.***, "Name or service not known"), (1*.*.**.***, "Name or service not known"), (1*.*.**.***, "Name or service not known") ]
2016-03-07T09:25:17.041-0600 W NETWORK [HostnameCanonicalizationWorker] Failed to obtain name info for: [ (1*.*.**.***, "Name or service not known"), (1*.*.**.***, "Name or service not known"), (1*.*.**.***, "Name or service not known") ]
2016-03-07T09:40:17.085-0600 W NETWORK [HostnameCanonicalizationWorker] Failed to obtain name info for: [ (1*.*.**.***, "Name or service not known"), (1*.*.**.***, "Name or …Run Code Online (Sandbox Code Playgroud) 我需要将hosts文件中定义的主机名解析为其对应的IP地址.
例如我的主机文件看起来像这样 - "/ etc/hosts"
127.0.0.1 ggns2dss81 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
192.168.253.8 abcdserver
192.168.253.20 testwsserver
Run Code Online (Sandbox Code Playgroud)
现在在我node.js,我可以阅读这个文件的内容,但我需要获取给定的hostname.
hostname = "testwsserver"
hostIP = getIP(hostname);
console.log(hostIP); // This should print 192.168.253.20
Run Code Online (Sandbox Code Playgroud)
PS - npm pkg或任何第三方软件包无法安装在计算机上.
非常感谢帮助!!
在我的库存中,我定义了这样的主机:
[server1]
141.151.176.223
Run Code Online (Sandbox Code Playgroud)
我正在寻找一个保留server1名称的变量,因为我用它来定义服务器主机名.
inventory_hostname设置141.151.176.223
ansible_hostname为以及inventory_hostname_short设置为148.
要解决此问题,我正在设置我自己的变量,如下所示:
[server1]
141.151.176.223 hostname=server1
Run Code Online (Sandbox Code Playgroud)
但我不满意这种方法.
有任何想法吗?