Perché Microsoft non ha mai implementato un'interfaccia di loopback in Windows?


11

Per prima cosa: so che è possibile installare una sorta di adattatore Loopback in Windows .

Ma quello che ho trovato davvero strano è che non esiste nulla di simile losu Windows. Affatto. Dall'interfaccia di loopback di rete mancante :

Lo stack TCP / IP di Windows non implementa un'interfaccia di loopback di rete, come si trova in altri stack TCP / IP come le interfacce lo * nei sistemi BSD.

...

L'adattatore Microsoft Loopback può essere installato su sistemi Windows, per eseguire applicazioni di rete quando non è presente o attivo alcun adattatore fisico sul sistema. Questo adattatore non è equivalente a un'interfaccia di loopback di rete e l'indirizzo IPv4 127.0.0.1 non può essere assegnato ad esso. Inoltre, non è possibile sniffare il traffico di rete su di esso, almeno con WinPcap.

Sarei davvero interessato se qualcuno sapesse perché è stata fatta questa scelta o perché non è mai sembrato necessario includere un dispositivo di loopback in Windows. Perché è così utile essere effettivamente in grado di catturare i pacchetti inviati da / a esso al fine di sviluppare o eseguire il debug di applicazioni di rete.

Quindi, se qualcuno ha un'esperienza nel networking, stack TCP / IP, ecc. Ed è in grado di fornire alcune informazioni, sarebbe molto apprezzato.


È lì, semplicemente non installato di default in Windows ... sevenforums.com/network-sharing/…
— Moab

Sì, no, vedi il primo link nella mia domanda. So che è una specie di adattatore loopback, ma non puoi ancora catturarlo.
— slhck,

Di che background stai parlando? Se uno sfondo di programmazione quindi ruotarlo come una domanda di programmazione e chiedere su StackOverflow.
— barlop

WireShark non lo raccoglie?
— barlop

@barlop No, non è legato alla programmazione. La mia domanda è perché hanno scelto di non implementarlo in modo "corretto" o altrimenti utile. Wireshark non può raccoglierlo come WinPcap non può.
— Slhck,

Risposte:


13

Ragioni storiche. Da zero unix / linux ha sempre riguardato la rete. Considerando che MS-DOS / Windows hanno bloccato la rete come ripensamento, inizialmente con Windows "NetBIOS" anziché TCPIP.

Solo quando è arrivato Netscape è stato necessario per Microsoft installare uno stack TCPIP e riconoscere la presenza di Internet. Prima di allora dovevi mettere insieme il tuo stack per parlare con macchine unix, pagando profumatamente il privilegio.

Spero che questo contesto storico ti aiuti a capire perché MS-Windows non è ancora veramente presente quando si tratta di una rete adeguata. Fare un'analogia con un'auto è un po 'come chiedere perché le moto non hanno quattro ruote. (Sì, questa è un'analogia molto scarsa ...)

Prima che diventasse importante collegarsi online c'erano molti protocolli LAN - DECnet, Token Ring, roba Novell e l'impegno di Microsoft in Windows 3.11 - solo i veri esperti potevano far dialogare queste diverse scatole e il networking era un'arte davvero oscura.


1
"Da zero" - sei sicuro che le primissime versioni di Unix fossero dotate di funzionalità di rete? Inoltre, al momento di Netscape, Microsoft non aveva uno stack TCPIP, dovevi installarne uno tuo.
— John Saunders,

-1

Sul serio? Sei sicuro che 127.0.0.1 non funziona?

È necessario che 127.0.0.X sia indirizzato allo stesso computer. Fa parte dello standard IPV4. Se Microsoft non lo sta implementando, sta rompendo le specifiche e lo troverei sorprendente poiché lo stack TCP / IP di "Microsoft" è davvero lo stack BSD e so che lo implementano.

So che "lo" non è elencato come interfaccia, ma non importa. È comunque solo una scorciatoia.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.