Here's the difference between export and db2dj.ini:
Normally when you an export an environment variable and then start a child process, the child process inherits all the environment variables that were exported to the parent process. See ==>
When DB2 starts, however, it does NOT copy all the current environment variables into the environment of the DB2 process. (It copies only certain variables.) Since the Federation wrappers need some data source client environment variables, db2dj.ini is introduced. At db2start (if dbm cfg FEDERATION = YES), then the variables listed in db2dj.ini are also copied into the environment of the DB2 process.
The DB2LIBPATH variable is described here =>