how do i find the subnet mask of each subnet given its network and the number of subnets needed? - ipv4

i am given 8 subnets of equal size. They are created in a /20 network. How can i find the mask for each of these subnets? I am not sure if i have to use VLSM or Magic number. All i know is that a network /20 gives 16 subnets. can someone explain how to approach this problem?

Related

Maximum number of external IP addresses per machine?

What is the maximum number of external IP addresses that can be assigned to a machine on Google Compute Engine? I found the AWS limits but I can't find the same for Google Compute Engine.
the Resource Quotas and Interconnect Quotas do not state any limit for external IP addresses, therefore they are available as good as unlimited, but still may be limited by two factors: a) by the availability of the resource-type in the region and b) how many of them you are able to pay. in case you may wonder how many of them one can assign to a single instance; this might be 4000-5000 (based upon reports), until the network stack becomes unstable vs. the theoretical limit of 4 294 967 294 (- 2). one possibly can only estimate that value, because the hardware configuration also plays a role there; with multiple virtual NIC it should be able to take a multiple of IPs.

Qemu/Libvirt: limit total download size

We're providing VMs to people with Qemu/Libvirt.
Now we'd like to make sure that users of these VMs can not download very large files (for example 1..2GB files).
Is it possible to limit this with QEMU/Libvirt?
I know there's a bandwidth option with libvirt that seems to use tc shape the bandwidth, but I'm looking for a way to not throttle the bandwidth speed, but rather the amount of downloaded bytes.
There's no mechanism in either QEMU or libvirt for limiting the total cumulative network traffic downloaded by a VM. All that's possible is to set data transfer rate caps via tc, as you've already noticed.
So any solution to this would have to likely be done in your network router, based on the guest assigned MAC address / IP address.
What we ended up doing was creating a daemon that monitored virsh domifstat and looked at rx_bytes. When a threshold is reached, the VM is destroyed.

Inter data center traffic of Google Compute VMs

Does anyone know that if there is a limit on network traffic among VMs in different data centers in Google Compute Engine?
Specifically, are there any performance limits if VMs in different DCs are frequently (every 5 ms) communicating with each other?
Thanks in advance.
I'm sure that there are some performance limits, but they should be fairly high if you're within the same region. (>100Mbps, possibly >1Gbps) Between regions, bandwidth is likely to be somewhat more variable, but I'd expect it to be >100Mbps on the same continent.
Note that there are also egress fees for traffic between VMs in different GCP zones, so you might want to pay attention to the total data transferred; 130Mbps would be around 1GB every minute, or $6/hour.

How to extend ipv4 addresses to 64 bit?

I know that ipv4 addresses are 32 bits. But is it possible to change the ipv4 addresses to 64 bit from 32 bit?
The feature is called enhanced-ipv4 or EnIP, take a look at this document (IPv4 with 64 bit Address Space January 2015):
Enhanced IP (EnIP) was designed to minimize impact on core and border routers. ... EnIP packets carry additional address bits and state in an IP option, eliminating routing table updates like IPv6. EnIP supports end-to- end connectivity, a shortcoming of NAT, making it easier to implement mobile networks. Host renumbering is also not required in EnIP as has been the case with other 64-bit protocol proposals
Enhanced IP (EnIP) is a method for extending the IP address space from 32-bits to 64-bits. The 64-bit addresses look like two IP addresses concatenated together. Enhanced IP is much simpler to implement than IPv6. To illustrate, there are 432 IPv6 RFCs and 1 Enhanced IP RFC.
Examples addresses for comparison:
IPv6 address: 2001:0101:c000:0202:0a01:0102::0
EnIP address: 192.0.2.2.10.1.1.2
IPv4 address: 192.0.2.2
Quick intro to Enhanced IP
Github project

Graphhopper - Travel Times Between All 30,000 Visible Zip Codes?

I'd like to calculate the matrix of travel times between US zipcodes. There are about 30k visible zipcodes, so this is 900 million calculations (or 450 million assuming travel time is the same in both directions).
I haven't used graphhopper before but it seems suited to the task. My question are:
What's the best way of doing it?
Will this overload the graphhopper servers?
How long will it take?
I can supply latitude and longitude for each pair of zip codes.
Thanks - Steve
I've not tested GraphHopper yet for these large amount of points, but it should be possible.
What's the best way of doing it?
It would be probably faster if you avoid the HTTP overhead and use the Java lib directly like in this example. Be sure to assign enough RAM as the matrix itself is already 2g if you only use a short value for the distance or time. See also this question.
Will this overload the graphhopper servers?
The API is not allowed to be used without an API key which you can grab here. Or set up your own GraphHopper server.
How long will it take?
Will take probably some days though.
Warning - enterprisy note: we provide support to setup your servers or for your usecase. And also we sell a matrix add-on which makes those calculations at least 10 times faster.