You can add a second IP to the sane NIC if the NIC is not set to DHCP.
Which means that you either:
- Need to get a fixed IP for your work laptop, so you can do this.
- go to start, settings, control panel, network connections
- Select the LAN and go to properties
- Go to advanced, tab "IP settings" and add a second IP
- Or still need to:
- write down the current IP/netmask
- go to start, settings, control panel, network connections.
- Select the LAN and go to properties.
- Unmark DHCP. Set a manual IP as written own in the first step.
- Go to advanced, tab IP settings and add a second IP.
- Or use a second network card for the second IP (usually the easiest way)
- Or install additional software for more network management.
I assume the last is not an option on corporate networks.
- Or you can install a VM and configure that to the alternate IP. (Probably only useful if you already use VM and do not want to break existing connections from your main desktop).
(In XP)
![screenshot of XP: advanced TCP/IP settings. Two IPs entered](https://cdn.statically.io/img/i.sstatic.net/JRFdo.png)
(In win7)
![screenshot of win 7 ultimate X64: advanced TCP/IP settings. Two IPs entered](https://cdn.statically.io/img/i.sstatic.net/CCnxR.png)
http://answers.microsoft.com has this as a C sharp solution for win 7:
However it has no explanation as to why it works, how it works, or how it has to be used.
public class IPAdder
{
[DllImport("iphlpapi.dll", EntryPoint = "AddIPAddress", SetLastError = true)]
private static extern UInt32 MyAddIPAddress(UInt32 Address, UInt32 IpMaskint, int IfIndex,
out IntPtr NTEContext, out IntPtr NTEInstance);
public IPAdder()
{ }
public static void AddIPAddress(String IPAddress, String SubnetMask, int ifIndex)
{
System.Net.
IPAddress IPAdd = System.Net.IPAddress.Parse(IPAddress);
System.Net.
IPAddress SubNet = System.Net.IPAddress.Parse(SubnetMask);
unsafe
{
int MyNTEContext = 0;
int MyNTEInstance = 0;
IntPtr ptrMyNTEContext = new IntPtr(MyNTEContext);
IntPtr ptrMyNTEInstance = new IntPtr(MyNTEInstance);
UInt32 Result = MyAddIPAddress((uint)IPAdd.Address,
(uint)SubNet.Address,ifIndex, out ptrMyNTEContext, out ptrMyNTEInstance);
};
}
}
public IPAddress Get37()
{
IPAddress ipa = IPAddress.Any;
// check network interfaces
foreach (NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces())
{
if ((ni.OperationalStatus != OperationalStatus.Up) ||
(ni.NetworkInterfaceType ==NetworkInterfaceType.Loopback) ||
(ni.NetworkInterfaceType == NetworkInterfaceType.Tunnel))
continue;
if ((ni.Description.IndexOf("virtual", StringComparison.OrdinalIgnoreCase) >= 0) ||
(ni.Name.IndexOf("virtual", StringComparison.OrdinalIgnoreCase) >= 0))
continue;
if (ni.Description.Equals("Microsoft Loopback Adapter", StringComparison.OrdinalIgnoreCase))
continue;
IPInterfaceProperties ipip = ni.GetIPProperties();
bool found37 = false;
foreach (IPAddressInformation unic in ipip.UnicastAddresses)
{
string strip = unic.Address.ToString();
if (strip == "37.0.0.1")
{
ipa = unic.Address;
found37 = true;
break;
}
}
if (!found37)
{
IPAdder.AddIPAddress("37.0.0.1", "255.255.255.0",
(int)(uint)ni.GetType().GetField("index", System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).GetValue(ni));
ipa =IPAddress.Parse("37.0.0.1");
}
break;
}
return ipa;
}
[Edit2]
If external software is allowed then Win IP config seems to do the job.
(screenshot was from v2.7. Link has now been changed to v4
).
![Screenshot of win7 with cmd.exe open with ipconfig output and winip cfg **V2.7** in the same image](https://cdn.statically.io/img/i.sstatic.net/DPBbd.png)