Все HTTP-привязки работают с TCP для транспортного уровня. Таким образом, вы можете использовать HTTP-привязки и IIS.6 для размещения службы WCF, которая работает на определенном порту TCP.
Вот пошаговое руководство о том, как этого добиться:
настроить службу для запуска на желаемом порту из файла конфигурации (или кода):
<service name="WCFService" behaviorConfiguration="DefaultBehaviour">
<host>
<baseAddresses>
<add baseAddress="http://localhost:8000/WCFService" />
</baseAddresses>
</host>
<endpoint address="mex" binding="mexHttpBinding" bindingConfiguration="" name="WCFService_mexEndpoint" contract="IMetadataExchange" />
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="DefaultBinding" name="WCFService_Endpoint" contract="WCFService.IService1" />
в IIS создайте веб-сайт (или виртуальный каталог) и настройте его привязку для запуска на порту, выбранном вами в конфигурации службы baseAddress (8000 для примера выше).
Результатом описанных выше шагов является служба WCF, которая работает на TCP-порту 8000 для транспортного уровня, используя HTTP в качестве транспортного протокола.
Редактировать : Я полагаю, вы здесь немного путаетесь. Если вы пытаетесь достичь двоичного переданного пакета, то единственное доступное решение - это привязка net.tcp, которая не совместима с IIS.6. Если вы просто хотите иметь возможность выбрать TCP-порт соединения, то любая HTTP-привязка может сделать это, как показано в моем примере выше, и может использоваться в IIS.6.