Many people have been using v2rayN for a long time and still don't understand what the "kernel" is. They are confused until one day when they are prompted to update the kernel or switch between Xray and sing-box. This article explains their division of labor in the most straightforward way.

1A metaphor: engine and cockpit

Think of the entire suite of agent tools as a car:

  • Kernel(Xray-core/v2ray-core) = engine: The part that is actually responsible for connecting to the server, encrypting and decrypting data, and sending and receiving data according to the protocol. It is a command line program with no interface and is very troublesome to use by yourself.
  • v2rayN = cockpit: The windows, buttons, node lists, speed tests, and subscription management you see are all provided by v2rayN. It turns complex kernel configuration into something that can be completed with just a few clicks of the mouse.

So v2rayN itself doesn't "translate" anything, it just Scheduling kernel. You select nodes and click connections on the interface, and v2rayN generates a configuration file and sends it to the kernel for execution.

Division of labor between client and kernel
v2rayN Graphical interface/scheduling Generate configuration config.json Xray kernel Encryption/decryption/forwarding Agent node Export to the Internet
v2rayN is responsible for the interface and configuration, and the real work is the Xray kernel.
Sponsored Looking for a stable node service for v2rayN? Selected high-speed lines · Multiple regions available · Support subscription import View Recommended Nodes

2The relationship between Xray-core and v2ray-core

v2ray-core is the "ancestor" and has been developed for many years. Xray-core is an enhanced version branched from v2ray-core. It is updated more frequently, has more performance optimizations, and is the first to support new features such as VLESS and Reality. Now v2rayN The default version is Xray-core, most people can just use it, it has more complete functions and better support for new protocols.

3Why update the kernel

  • Support new protocols: For example, newer things such as Hysteria2 and Reality are not recognized by the old kernel, and the corresponding nodes can only be used after updating.
  • Repair and anti-blockade: The network environment is changing, and kernel updates often include connectivity improvements. The old kernel may one day be unable to connect to large areas.
  • Performance: Newer versions tend to be more resource-efficient and faster.

The update method is very simple: "v2rayN body" and "Xray kernel" can be updated separately in the "Check for updates" in the v2rayN menu. For detailed steps, see Upgrade update tutorial.

The kernel and interface need to be updated separately: Upgrading v2rayN to a new version does not mean that the kernel has also been updated accordingly. If the new protocol node cannot be connected, update the Xray kernel separately first and it will usually be solved.

4There is also a sing-box kernel

The new version of v2rayN supports multi-core. In addition to Xray, it can also switch to sing-box Kernel. It has more complete support for some new protocols (such as Hysteria2, TUIC). How to switch and when to use it? See Multi-core switching tutorial. The default Xray is enough for daily use. If you encounter specific protocol nodes, consider switching.

Download v2rayN (Windows version)v7.22.6 · Support x64 / ARM64 · Open source and free