Enabling net.tcp in IIS7

How can I make the IIS descriptor net.tcp ?

+60
iis-7
Jul 06 '10 at 17:24
source share
3 answers

You need to add net.tcp to the enabled protocols of your site. Go to IIS Manager, right-click on your website, go to "Website Management" or "Application Management", and then "Advanced Settings ...". There you see "Enabled Protocols". This probably says http . Change it to http,net.tcp .

If you want to customize the bindings, right-click on your website and go to "Edit bindings ...". The default binding is net.tcp 808:* .

If you want to use the WCF services hosted on IIS by net.tcp, you can also check if you have activated the necessary Windows features. Go to your Windows features and verify that you have activated "Activating Windows without HTTP Support" (see the "Microsoft.NET Framework 3.5.1" section).

When you activate this feature, you will receive additional Windows services. If it still does not work, check if the Windows service with the name 'Net.Tcp Listener Adapter' is running (should start automatically, but sometimes it is not, and this is the first thing I check when one of my net.tcp services stops working).

+119
Jul 6 '10 at 17:32
source share

This may help someone in the future. I created a powershell script that comes in handy if you need to automate the creation of bindings .

It will automatically check for the presence of the binding and add it only if necessary.

Actual script

 Import-Module WebAdministration $websites = Get-ChildItem 'IIS:\Sites' $site = $websites | Where-object { $_.Name -eq 'Default Web Site' } $netTcpExists = [bool]($site.bindings.Collection | ? { $_.bindingInformation -eq '808:*' -and $_.protocol -eq 'net.tcp' }) if (!$netTcpExists) { Write-Output "Net TCP binding does not exist. Creating binding now..." # Create the binding New-ItemProperty 'IIS:\Sites\Default Web Site' -name bindings -Value @{protocol="net.tcp";bindingInformation="808:*"} Write-Output "Binding created" } else { Write-Output "TCP Binding already exists" } Write-Output "Updating enabled protocols..." Set-ItemProperty 'IIS:\sites\Default Web Site' -name EnabledProtocols -Value "http,net.tcp" Write-Output "Enabled protocols updated" 
+7
Sep 22 '15 at 14:06
source share

The last step worked for me.

  1. Verify that these protocols are defined in the Advanced Settings of the website. enter image description here
  2. Make sure the functions below are set. enter image description here
  3. Services below must be running enter image description here
  4. Your application pool should use an integrated pipeline
  5. Close IIS Manager, restart IIS, and open IIS Manager again
  6. Check the listenerAdapters section in the applicationHost.config file (located in C: \ Windows \ System32 \ inetsrv \ config). If you don’t see the listener adapters you want to use in the bindings, add them manually enter image description here Source: Missing bindings in IIS (net.tcp, net.pipe, net.msmq, msmq.formatname)
+1
Jul 29 '19 at 18:11
source share



All Articles