Configure network interfaces in Go - go

Does Go offer a way to configure network interfaces? I found a very easy to use net.Interfaces method to get the information, but i want to modify the network configuration.

In order to modify your network config, the best way would be to call external tools like ip, iptables, ifconfig, brctl, etc..
This is the way we do in within docker (https://github.com/dotcloud/docker/blob/master/network.go#L72)

Related

Can I make arch use a proxy depending on the Wifi network I am using?

I am switching between two networks all the time. My home network and PEAP MSCHAPv2 network that uses a proxy server. I always have to change my proxy settings or set/unset environment variables depending on what network I am using. Also is there a way to do this with the Firefox browser, because it is not using the system setting?
By the way, does such a question even belong here?
Thank you in advance

Can I use kubespray to deploy a k8s with no network plugin?

We do not need any network model like Calico or weavenet, just host network is enough. But I couldn't find a way to disable network plugin. Kubespray always wants me to specify one.
How can a host network work with multiple servers? Use the default.

Hosting a VPN on Heroku

I was wondering if it's possible to host a private vpn on heroku?
My (hypothetical) use case is that let's say there's some service that's only available in Europe but I want to access it in the USA. I'd like to turn a European heroku server into a personal vpn that just allows me to access that service.
I did some research and can't find anyone else who's tried/documented this.
You basically want a proxy. So heroku forbids running an open proxy, so you should restrict use.
XIX. Operate an “open proxy” or any other form of Internet proxy service that is capable of forwarding requests to any end user or third-party-supplied Internet host;
--https://www.heroku.com/policy/aup
But technically it is possible - you might want to try it: https://github.com/Rob--W/cors-anywhere, if you want to use the browser you will need to download the headers from the server.js file
Note that this project is not intended to be used as an open proxy, so for example relative paths are not loaded properly.
You might want to try it - it might be more appropriate, I just did not try it myself ... :)
https://github.com/http-party/node-http-proxy#setup-a-basic-stand-alone-proxy-server

Steps to setup proxy server

I want to setup proxy server on our office. I have two proxy server's available i.e. (SQUID for Linux and WinProxy for Windows). I have following requirement.
All the rule's which I define in proxy server like block some specific sites etc. should likely to work.
The "Evolution Mail Client" for linux and "Outlook Express" for windows also should work.
So, can you tell me the guidelines how to achieve both the task especially no.-2 .
Thanks in advance.
Squid is a very good option for a caching proxy. It has a configuration file to block some specific sites, IPs, domains... and to tell him which files has to cache. Making a smart proxy is not easy. But you can find great configurations and tutorials in Google or in his wiki.
There are two ways for setting up a proxy:
Direct proxy: you have to manually configure every computer to use your proxy server.
This is the easiest option. I recommend you using this.
Please note, computers that don't use the proxy can access all pages (even if they're blocked).
Transparent proxy: this is the most secure, ideal option for most cases (including yours). You have to configurate your network and the proxy server to forward any requests to it. This is a hard option and very difficult to achieve in your case.
About your Evolution and Outlook problem, there can't be any problems related to the proxy, don't worry about that.

Configure static routes on Windows

There is a netsh and a route command on Windows. From their help text it looks like both can be used to configure static routes. When should you use one and not the other? Is IPv6 a distinguishing factor here?
route is a very old and basic tool for displaying and modifying the entries in the local IP routing table while netsh is the newer, more robust command-line scripting utility that allows you to, either locally or remotely, manipulate the network configuration.
netsh has a zillion more features than route; it can even save your current settings as a script that another instance of netsh can parse. Check out Using netsh to see the giant feature set and compare it to how very basic and simple routes is.

Resources