Webhosting in a 6in4 tunnel, allow ipv4 access (NON-DUALSTACK) - proxy

I'm serving a website with a 6in4 tunnel using gogo6client.
It is accessible over ipv6 native clients, but not ipv4.
For network setup reasons I cannot forward port 80 in NAT on the ipv4 side of things.
I was wondering if there was a way to translate or proxy inbound ipv4 traffic to see my ipv6 site.
maybe something that routes ipv4 clients to a 6in4 tunnel as well, but on the fly, without installing a client.
I know this site ( ipv6proxy.prolocation.net ) enables ipv4 websites access to the ipv6 network, however what I am asking is the reverse.
Is this possible?
-td8f4

Related

How do I find the IPv4 address on a Google Cloud service?

I have a Go service, deployed on Heroku, which pulls the IPv4 address from the request header successfully.
ip := net.ParseIP(strings.Split(r.Header.Get("X-Forwarded-For"), ",")[0]).String()
I have deployed the identical code as a service to Google Cloud, and the IP addresses are frequently IPv6 in about 25% of the time. After examining the full Request Header, there is no IPv4 address available anywhere, only IPv6.
Heroku's Request Header X-Forwarded-For ALWAYS contains the IPv4 address, yet Google Cloud doesn't. Does anyone know a way to force the IPv4 format for Request Headers in Google Cloud?
Clients can connect via IPv4 or IPv6 but not both. Only one address family will be used by the client and only one IP address will be recorded by the proxy.
Additional information:
Heroku does not support IPv6 so clients are forced to connect using IPv4. reference
If you only want IPv4 connections, do not enable the IPv6 frontends. However, I recommend using IPv6 where possible.

How to find Wifi routers in network

Good day
Do you have any idea how to find WIFI routers or devices which is connected to specific LAN sockets in network?
I am try find this devices from logs Elasticsearch + Kibana namely
https://www.elastic.co/guide/en/beats/packetbeat/current/configuration-interfaces.html
With this solution I have problem with set up : packetsbeats.
Other solution which I found is : WireShark or Advanced IP Scanner or Angry IP.
With this solution /tools is problem with default setting of routers / devices which is lock ports. Its mean I can get all IPs or MACs in network but how I will get know which is IPs or MACs belonging to Routers / NTB / Mobiles ect..?
From this reason I decide find routers in network from logs by Kibana.
Do have any idea or did you make something like me?
Thanks
Wi-Fi (IEEE 802.11) is a layer-1/2 protocol, but routing is a layer-3 function, so there really is no such thing as a Wi-Fi router. There are some routers that have Wi-Fi interfaces, but they are routing a layer-3 protocol, e.g. IPv4, not Wi-Fi. Ports are layer-4 addresses for some layer-4 protocols, e.g. UDP, and they have nothing to do with routing layer-3 packets.
A router is simply a host on a layer-2 LAN. The configured gateway for your host is usually a router. The gateway is the host on a LAN to which your host sends packets destined to a different network.
Determining which hosts on a LAN are routers is a problem because you have no way to know which hosts are actually routers. You can have multiple routers on a LAN, but your host will be configured with one as its default gateway.
If you want to determine which host is the gateway for your host, then you should look at the configuration of your host, not at any particular host on the LAN.

Windows: how to pass all traffic to a specific port via an HTTP proxy?

Short version of the need:
Pass all traffic of a specific port (TCP) via a proxy
It should be an HTTP proxy with port 8000
Description
I have an application that needs to reach an external IP with a specific port (TCP). But the standard corporate network blocks outbound traffic to this port.
I can, however, access that port when working with the corporate HTTP proxy that works on port 8000.
Alas, my application does not have any proxy settings, and IE's proxy settings are irrelevant.
Port forwarding and tunneling won't do me any good (already tried netsh anyway), since I need not only to reach the proxy, but I need it to actually function as a proxy.
Can anyone recommend on a method / software that will allow me to pass all traffic to port X via a proxy?
It has to be the traffic of a specific port, since there is a web server installed on that machine and I don't want to temper with it.
Thank you!
Windows doesn't route by port. The real answer is send the traffic to a firewall or layer 3 device that can route by port.
But,
If you know the ip address of the destination you could force that traffic to the proxy if the proxy address is on the same subnet. If it's not on the same subnet your computer will try to send the traffic to that as a gateway but it won't be avaiable (it won't be routed). But, it's so simple it's worth a try.
Example....
Computer 192.168.1.10, 255.255.255.0
Proxy 192.168.1.254 255.255.255.0
Destination IP. 68.68.68.68
route add -p 'destination ip' 'destination subnet range' 'where to send traffic, normally the next hop gateway'
Using example addresses (replace the two addreses with yours but keep 255.255.255.255)
Open Command prompt as administrator, Type route add -p 68.68.68.68 255.255.255.255 192.168.1.254
Using 255.255.255.255 forces it to only route one address.
-p will make the route stay after a reboot.
If it doesn't work you can remove the route simply route delete 'destination ip'
Route delete 68.68.68.68

What happens when an ipv6 client connects to an ipv4 host

This is a noob question, but networking isn't my forte. For example if I have an ipv4 server and an ipv6 client connects, what would their ip show as? Also if I wanted to setup a socket connection for example, does my server have to be ipv6 too, or does the code just need to be able to handle it.
I have researched how code handling works, but nothing says if the server has to be ipv6, itself.
IPv4 and IPv6 are not directly compatible. In most installations, a client will have both an IPv4 and an IPv6 address, and will use whichever one is appropriate to connect to a server. That is, they will use their IPv4 address to connect to an IPv4 server, IPv6 to connect to an IPv6 server, and will preferentially choose one of the two — usually IPv6 — if a server supports both.
IPv4-only clients cannot connect to IPv6 servers. Unless you intend to provide a service to IPv6 users only, you will need to provide your service on IPv4, or on both protocols, to support IPv4 clients.
IPv4 and IPv6 are separate incompatible protocols. An IPv6 client cannot connect directly to a server running only IPv4.
A connection is possible if an intervening router or switch maps from the IPv6 protocol to IPv4, or if the server runs both protocols. However, the IPv6 client is still maintaining an IPv6 connection and is unaware of any IPv4 connection.

how can I connect to an ipv4 host with ipv6 request?

Although most of the hosts have ipv6 address now, there are still some hosts that only have ipv4. In my LAN, connections using ipv4 will cost money, while connections using ipv6 is free. I want to implement a proxy to convert ipv4 and ipv6 request, so that I can connect to ipv4 host free.
Is it possible to implement that? And is there any available software?
This largely depends on the devices, services/protocols and the direction you want to connect in.
NAT64/DNS64
With NAT64/DNS64 you can let IPv6-only clients connect to IPv4-only servers. The system looks up the name of the server it wants to connect to using the DNS64 server. If the DNS64 server sees that only an IPv4 address is available it will replace the IPv4 address of the server with a special IPv6 address in which it has encoded the original IPv4 address. When the IPv6-only system connects to that IPv6 address the NAT64 router knows that the intention is to connect to the IPv4 address encoded in the IPv6 address and it will set up a NAT session to that IPv4 address. The NAT64 box needs to have both an IPv4 and IPv6 address to be able to do this.
HTTP Proxy
If you only want to support HTTP and similar protocols then you might be able to use an HTTP proxy server. It will need to have both an IPv4 and IPv6 address, and your applications/devices need to support using a proxy server. It will work both for IPv4-only clients and IPv6-only servers and vice-versa.
SOCKS5
A SOCKS5 proxy server can also be used in the same way that an HTTP proxy server can be used, but with a wider variety of protocols. Your clients need to support it though.
Other
There are other more application-specific ways to proxy between IPv4 and IPv6. The few mentioned above are just to give you an idea of common ones.

Resources