How to install and use the iNode client under Arch linux

H3C is called Xinhuasan Group in Chinese. It is a core enterprise under Tsinghua Unigroup. Its service types and scope are quite wide. Since the company's data center uses its gateway solution, my home computer uses Arch Linux. It is not very simple to connect to this virtual private network. There are few clear explanations when searching for information online.

What's more terrible is that some college campus networks are also H3C solutions, and many Linux novices also need to use this iNode for network authentication. This reminds me of when I was in college N years ago, the school used Ruijie Network's client authentication and billing, and Linux also failed to connect in various ways, or it was daunting for novices. If you use Linux, you can't get on the campus network. To be honest, I have experienced this helpless feeling, which seriously affects technical learning.

As a person who has experienced it, in order to help the suffering students in mainland China, I also sorted out and recorded it. It may be useful to others, but it is not guaranteed to be completely correct. Anyway, I can connect and use it.

If you are a user of other platforms, you don’t need to read this article at all, just read the official document.

If you are a Linux user, you need to browse the official document, mainly to understand its logical steps.

  • Download iNodeManager
  • Customize iNode client

To be honest, as a C-end user, I don’t understand why a client also needs to be generated in this way. It’s inexplicable and a bit cumbersome.

  • Install iNode client
  • Connect

Also, the download address of iNodeManager seems to be not public (unverified). I can only understand that someone will give you this download link. I got it from the company. Campus network users may need to contact the network administrator.

2. Client installation

As a user, most people use this client to connect to the server, so I assume that you have generated the customized client compressed package through the above document introduction.

1➜ ~ pwd
3➜ ~ file iNodeClient_Linux64_7.3\ \(E0630\).tar.gz
4iNodeClient_Linux64_7.3 (E0630).tar.gz: gzip compressed data, from Unix, original size modulo 2^32 94699520

For example, the client I customized iNodeClient_Linux65_7.3 (E0630).tar.gz, after decompression, enter:

 2➜ ~ tar -xvf iNodeClient_Linux64_7.3\ \(E0630\).tar.gz
21➜ ~ cd iNodeClient/

Start the installation, you need to switch to su - root, Why do this? Please refer to the official installation document

1➜ iNodeClient su - root
2[root@minipc iNodeClient]# ./
3iNode has been installed on the path /home/mephisto/Downloads/iNode/Linux/iNodeManager/iNodeSetup/iNodeClient.
4This operation will remove iNode. Are you sure to continue?[input Y/y to continue]:y
5chmod: cannot access '/etc/init.d/iNodeAuthService': Not a directory
6Nothing special for
7./ line 516: /etc/init.d/iNodeAuthService: Not a directory
8./ line 529: /etc/init.d/iNodeAuthService: Not a directory

The above errors can be ignored, because I installed it in a very deep directory before, so it will prompt to delete the original iNode. Why is the directory so deep when I installed it for the first time? I have to ask H3C, it's ridiculous.

Under normal circumstances, the above command will automatically start a AuthenMngService service. On my Arch Linux, it is probably the error shown above.

Therefore, you have to start it manually and keep it running (because I use Tmux, usually when I need to connect to the computer room network, I open a tab to connect, the frequency is very low, of course, you can also directly make it a startup item).

 1[root@minipc iNodeClient]# ./AuthenMngService
 2[root@minipc iNodeClient]# LibDBus::LoadLibrary: dbus_bus_get = 0x70609d273c40
 3LibDBus::LoadLibrary: dbus_bus_register = 0x70609d2733d0
 4LibDBus::LoadLibrary: dbus_message_new_method_call = 0x70609d280ad0
 5LibDBus::LoadLibrary: dbus_error_init = 0x70609d26d440
 6LibDBus::LoadLibrary: dbus_error_free = 0x70609d26d480
 7LibDBus::LoadLibrary: dbus_message_unref = 0x70609d280830
 8LibDBus::LoadLibrary: dbus_connection_read_write_dispatch = 0x70609d275f90
 9LibDBus::LoadLibrary: dbus_connection_add_filter = 0x70609d270570
10LibDBus::LoadLibrary: dbus_connection_remove_filter = 0x70609d2719d0
11LibDBus::LoadLibrary: dbus_error_is_set = 0x70609d26dde0
12LibDBus::LoadLibrary: dbus_message_is_signal = 0x70609d27ba50
13LibDBus::LoadLibrary: dbus_bus_add_match = 0x70609d274950
14LibDBus::LoadLibrary: dbus_connection_send_with_reply_and_block_func = 0x70609d273180
15LibDBus::LoadLibrary: dbus_connection_unref_func = 0x70609d271670
16LibDBus::LoadLibrary: dbus_message_get_args_func = 0x70609d27f600
17LibDBus::LoadLibrary: dbus_message_get_args_valist_func = 0x70609d27f520
18LibDBus::LoadLibrary: dbus_message_append_args_func = 0x70609d281b40
19LibDBus::LoadLibrary: dbus_message_append_args_valist_func = 0x70609d2817e0
20LibDBus::LoadLibrary: dbus_message_iter_init_func = 0x70609d279ae0
21LibDBus::LoadLibrary: dbus_message_iter_recurse_func = 0x70609d27a500
22LibDBus::LoadLibrary: dbus_message_iter_get_basic_func = 0x70609d27f870
23LibDBus::LoadLibrary: dbus_message_iter_get_arg_type_func = 0x70609d27a3d0LibDBus::LoadLibrary: dbus_message_iter_next_func = 0x70609d27a350
25[root@minipc iNodeClient]# ps -ef |grep -i Authen
26root 3467 1 0 14:43 ? 00:00:01 ./AuthenMngService

3. Run the client to start the connection

After confirming that the above process is running and has not exited, switch back to the normal user.

1➜ iNodeClient whoami
3➜ iNodeClient ./

Finally, it will pop up a graphical interface client, and connect according to the official document (for campus network users, the protocol may be different, you need to explore it yourself, it should not be difficult, I am showing here how to connect to a virtual private network, why not use those three letters instead, because the article will be posted to the official account, you should understand, with good intentions, but can't say it, there are many demons and monsters against the mainland).

![iNode client](/images/iNode-intelligent-client

H3C also calls it a smart client, but I don't see where the intelligence is. Even a network requires so many steps.

As shown above, fill in your own authentication information. After the connection is successful, you will be assigned an intranet IP address.

At the same time, a tun0 network card will be generated, and the IP address of the network card is the IP address assigned above (to keep the company confidential, I use xxx instead of sensitive information)

 1➜ ~ ip a
 21: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
 3link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
 4inet scope host lo
 5valid_lft forever preferred_lft forever
 6inet6 ::1/128 scope host noprefixroute
 7valid_lft forever preferred_lft forever
 82: enp1s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
 9link/ether 70:70:fc:06:ac:aa brd ff:ff:ff:ff:ff:ff
103: wlp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
11link/ether e4:c7:67:3f:6a:06 brd ff:ff:ff:ff:ff:ff
12inet brd scope global dynamic noprefixroute wlp2s0
13valid_lft 42199sec preferred_lft 42199sec
14inet6 fe80::f381:c4ab:a43d:ab0e/64 scope link noprefixroute
15valid_lft forever preferred_lft forever
164: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 500
18inet brd scope global tun0
19valid_lft forever preferred_lft forever
20inet6 xxx::xxx:xxx:xxx:xx/64 scope link stable-privacy proto kernel_ll
21valid_lft forever preferred_lft forever

The system routing table will also have corresponding changes, almost all of which will pass through tun0. Network experts should know why this happens, and ordinary users can just take a look.

These are all handled automatically by negotiation between the two parties after the network is connected. When you exit the client, the routing table will also be automatically deleted.

 1➜ ~ ip route
 2default via dev wlp2s0 proto dhcp src metric 600
 310.xx.xx.0/24 dev tun0 scope link
 410.xx.xx.0/24 dev tun0 scope link
 510.xx.xx.0/24 dev tun0 scope link
 610.xx.xx.0/24 dev tun0 scope link
 710.xx.xx.0/24 dev tun0 scope link
 810.xx.xx.0/24 dev tun0 scope link
 910.xx.xx.0/24 dev tun0 proto kernel scope link src
1010.xx.xx.0/24 dev tun0 scope link
11x.x.x.x via dev wlp2s0

If you don't generate tun0, you may need to find out what went wrong.

After connecting to the network, you can find an intranet service to test it. Since it is a virtual private network connected at home, it has been confirmed that there is no problem accessing the company's service.

For subsequent connections, just switch users, open ./AuthenMngService, and then switch back to the normal user to execute the script to start. I don't want the system to have so many self-starting services. It's good to start them on demand.

In fact, these should all be automatic, and the Destktop file has been created (well, H3C is still a little smart), and those who understand will understand.

1➜ iNodeClient cat iNodeClient.desktop
2[Desktop Entry]

4. Summary

Arch Linux is still not as convenient as the Deb series in some specific software. It takes more effort to fiddle with it. Many software vendors only provide deb packages by default.

As a Linux user for many years, I have already adapted to all this. I feel uncomfortable without Linux. For example, the computer used in the company is Mac, with various Command keys, and I often have to click the mouse, which is very inefficient.

To work and make money, you have to collaborate with others, not just consider yourself, which is also a compromise.

If you have any questions about this article, you can follow my WeChat public account and leave a message to contact me. I will try my best to reply and deal with it when I am free.

Lastmod: Monday, June 10, 2024

See Also: