Jump to content

Cannot restart Plastic service - socket error?


Recommended Posts

I'm running plastic SCM 5.4 CE on Windows 2008 R2. All was working well until some recent domain changes, and now the Plastic service won't start.

As part of a network upgrade I have set up a new Windows Server 2019 DC to replace an old Windows Server 2008 DC. We use AD authentication for Plastic, and I was hoping it would automatically start using the new DC. But when I turned off the old DC Plastic clients could no longer connect to the server - it gave an authentication error (presumably it was still looking for the old DC instead of the new one).

I tried re-running the server config tool, re-specifying the AD authentication and the (same) port (8084), but now the Plastic service won't start at all. It gives the following error:

FATAL Daemon - Remoting configuration failed with the exception 'System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Net.Sockets.SocketException: Only one usage of each socket address (protocol/network address/port) is normally permitted
   at System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot, SocketAddress socketAddress)
   at System.Net.Sockets.Socket.Bind(EndPoint localEP)
   at System.Net.Sockets.TcpListener.Start(Int32 backlog)
   at Codice.Channels.PlasticTcpServerChannel.StartListening(Object data)
   at Codice.Channels.PlasticTcpServerChannel..ctor(IDictionary properties, IServerChannelSinkProvider serverSinkProvider, Boolean bUseSSL)
   at Codice.Channels.PlasticSecuredTcpChannel.CreateServerChannel(IDictionary properties, IServerChannelSinkProvider serverSink)
   at Codice.Channels.PlasticTcpChannel.Init(IDictionary properties, IClientChannelSinkProvider clientSink, IServerChannelSinkProvider serverSink)
   at Codice.Channels.PlasticSecuredTcpChannel..ctor(IDictionary properties, IClientChannelSinkProvider clientSinkProvider, IServerChannelSinkProvider serverSinkProvider)
   --- End of inner exception stack trace ---
   at System.RuntimeMethodHandle._InvokeConstructor(Object[] args, SignatureStruct& signature, IntPtr declaringType)
   at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
   at System.Runtime.Remoting.RemotingConfigHandler.CreateChannelFromConfigEntry(ChannelEntry entry)
   at System.Runtime.Remoting.RemotingConfigHandler.ConfigureChannels(RemotingXmlConfigFileData configData, Boolean ensureSecurity)
   at System.Runtime.Remoting.RemotingConfigHandler.ConfigureRemoting(RemotingXmlConfigFileData configData, Boolean ensureSecurity)'.

I have tried booting up the old DC again (just in case), but that hasn't helped. I can't get the Plastic server running at all.

My understanding of this error "Only one usage of each socket address (protocol/network address/port) is normally permitted" is that it means the port it's configured to use is already in use. But it's the same port we were using previously, and as far as I can tell nothing else is using it. So I'm a bit stuck. I have tried other unused ports but get the same error.

I did also install some Windows updates at the same time, so it's possible this is what triggered the issue.

Does anyone have any suggestions on what to try?

Thanks in advance.

Link to comment
Share on other sites

I've managed to resolve this. When I specified a port in the server config tool, it seems to set both the non-SSL and SSL ports to the same number. This then causes the error when attempting to launch the service, as it attempts to use the same port for both. I manually edited the ports in the remoting.conf file so they were different, and the service now starts successfully. The authentication issues seem to have resolved themselves too, so perhaps re-running the config tool did fix that.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...